@laravel_pro

Страница 828 из 2014
Enjoy the
16.10.2017
11:21:03
что делать то
Делать запросы из репы или нет

F01134H
16.10.2017
11:21:25
Нет

Я же сказал уже

Google
Денис
16.10.2017
11:21:35
ну смотря как ))

F01134H
16.10.2017
11:21:36
в третий раз скину http://design-pattern.ru/patterns/repository.html

Денис
16.10.2017
11:21:52
что ты подразумеваешь под делать запросы

Enjoy the
16.10.2017
11:21:55
На хуйню типа файнд и селлект олл я должен это говно что ле тащить или нет

F01134H
16.10.2017
11:21:55
https://habrahabr.ru/post/248505/

что ты подразумеваешь под делать запросы
я подразумеваю под этим - делать запросы к бд

невероятно

Денис
16.10.2017
11:22:26
да пиздец доебался до слов )

F01134H
16.10.2017
11:22:28
через квери билдер или через другую абстракцию - не имеет значения

Я не доебывался до слов

Это программирование, тут одно слово значит дохуя

Денис
16.10.2017
11:22:45
кстати

погоди

Google
Денис
16.10.2017
11:22:51
пример такой

сложные метрики и графики

откуда ты будешь тащить данные

F01134H
16.10.2017
11:23:16
из базы данных

Денис
16.10.2017
11:23:30
нихуа себе

где ты вызовешь sql

F01134H
16.10.2017
11:24:00
в сервисе каком-нибудь

где угодно

не в репе точно

в репу эти данные пойдут уже после запроса

как в ларе это реализовано из коробки, офк

Вот смотри, банальный пример использования репозитория

ты хочешь сделать сложную выборку данных, но не хочешь бд грузить

ты берешь все данные

и выборку делаешь по ним уже в репозитории

бывает и такое

Андрэ
16.10.2017
11:25:54
ты берешь все данные
Прикалываешься?)

F01134H
16.10.2017
11:26:01
Прикалываешься?)
просто для примера

Андрэ
16.10.2017
11:26:02
А если 100500 данных?)

F01134H
16.10.2017
11:26:05
Андрэ, ну йобана

Google
F01134H
16.10.2017
11:26:46
Хорошо, более реальный пример, тебе надо получить данные, которые нужно в нескольких местах отсортировать по разному

вместо нескольких запросов, ты делаешь один запрос и сортируешь его по разному в нескольких местах с помощью репы

Андрэ
16.10.2017
11:27:04
Я бы сделал в репе разные методы

Денис
16.10.2017
11:29:49
да и вообще я бы не работал с орм без репы, типа выделение безнес логики

F01134H
16.10.2017
11:30:29
ты путаешь определения просто, по тому что я вижу

Денис
16.10.2017
11:30:29
ни с орм ни с чем другим, ну да, каждому проекту своя реализация

F01134H
16.10.2017
11:30:34
называешь орм репозиторием

Абстракцию для запросов хочешь пихнуть в хранилище данных

Денис
16.10.2017
11:30:48
бляяяя

отстань

F01134H
16.10.2017
11:31:12
потрачено

@negasus как считаешь, я прав?

Андрэ
16.10.2017
11:32:48
Ну хз. Я бы репозиторий не назвал коллекцией. Так как думаю, там может быть логика доступа к данным. Го в php чат, там можно обсудить

F01134H
16.10.2017
11:33:05
го

Андрэ
16.10.2017
11:33:24
Я правда эпизодически. Работаю

F01134H
16.10.2017
11:34:03
хотя эт наверн скорее даже к ооп относится

Enjoy the
16.10.2017
11:42:59
запросам к бд уточняю тип

Андрэ
16.10.2017
11:43:22
Да

Enjoy the
16.10.2017
11:43:45
Пасеба

Google
Андрэ
16.10.2017
11:44:00
Ну я не истина в последней инстанции

Денис
16.10.2017
12:28:26
имеет место быть )

Antonio
16.10.2017
12:37:38
Подскажите, а есть возможность "замедлить" тесты? в определенный момент вместо 200 кода получаю 429 Too Many Requests . Ну и если phpunit не для этого чата, то пошлите куда надо =)

Alexandr
16.10.2017
12:46:12
@JesterAntik это костыль это тебя посылает мидлвэр throttle он в файле App\Http\Kernel можешь запилить if (env('APP_DEBUG', true))

Денис
16.10.2017
12:48:02
https://laravel.com/docs/5.5/container#introduction

в общем прослойка между сервисом работы бд и контроллером

Antonio
16.10.2017
12:49:55
@JesterAntik это костыль это тебя посылает мидлвэр throttle он в файле App\Http\Kernel можешь запилить if (env('APP_DEBUG', true))
Я вижу в Kernel объявленный параемтр, но как его сделать условным? О_о 'api' => [ 'throttle:60,1', 'bindings', ],

Alexandr
16.10.2017
12:51:53
'api'=> (env('APP_DEBUG', true)) ? [ 'throttle:60,1', 'bindings', ] : [ 'bindings', ]

что-то около

ой

поменяй массивы местами только))

Antonio
16.10.2017
12:53:25
спасибо

Enjoy the
16.10.2017
12:53:30
'api'=> (env('APP_DEBUG', true)) ? [ 'throttle:60,1', 'bindings', ] : [ 'bindings', ]
Так вроде дефолт ставишь или я ошибаюсь?

Alexandr
16.10.2017
12:53:42
ага

такстоп!

нет

это если оно в .env не находит таёт тебе значение из второго аргумента

Enjoy the
16.10.2017
12:54:31
env('APP_DEBUG') === true - мож так должно быть?

Alexandr
16.10.2017
12:54:34
env('test', 'default')

Enjoy the
16.10.2017
12:54:42
В условии

Google
Enjoy the
16.10.2017
12:54:57
А

Alexandr
16.10.2017
12:55:10
костыль, не красиво

Antonio
16.10.2017
12:55:57
думал я дурак, но PHP тоже говорит, что выражение не может быть использовано для указания значения по умолчанию для свойства класса

Андрэ
16.10.2017
12:56:01
Не стоит в коде обращаться к env. Лучше config(“app.debug”)

Alexandr
16.10.2017
12:56:10
cat .env TEST=123 $ env('TEST', 11111) » 123 $ env('TEST2', 11111) » 111111

Anton
16.10.2017
12:56:15
если у тебя разные настройки для разных окружений, то надо их прописывать не if и смотреть окружение, а в самом конфиге

прям в .env и определи значение...

F01134H
16.10.2017
12:56:43
делаешь свою конфиг переменную, хранящую значение для тестового апи

Anton
16.10.2017
12:56:48
ну или в нужном .env.XXX

Alexandr
16.10.2017
12:57:11
ему нужно простое решение

чтобы было понятно

F01134H
16.10.2017
12:57:26
я назвал изичное)

Alexandr
16.10.2017
12:57:30
+ не костыльно

F01134H
16.10.2017
12:57:36
и не костыльное

Antonio
16.10.2017
12:57:42
чтобы было понятно
ну все манипуляции мне понятны

попробовал сдулать вот так: protected $middlewareGroups = config('middleware.groups');

проблема остается все та же: в качестве дефолта нельзя использовать вычисляемое значение

F01134H
16.10.2017
13:00:43
в каком-нибудь config/route.php добавляешь строку api-ratelimit => env("API_RATELIMIT", "throttle:60,1"); в кернеле соотв-но назначаешь 'api' => [ config('route.api-ratelimit'), 'bindings', ], А в phpunit.xml подставляешь свою ENV переменную

Страница 828 из 2014