@laravel_pro

Страница 601 из 2014
Dmitriy
23.07.2017
13:58:22
команды это как контроллеры . только одают и получают

Den
23.07.2017
13:58:52
Консольные?

Dmitriy
23.07.2017
13:59:26
а еще есть какие команды ?

Google
Den
23.07.2017
13:59:38
Есть

Те, что лаунчатся с помощью DispatchesJobs

В них и логика

Dmitriy
23.07.2017
14:03:19
А если джопсы не нужны ?

Den
23.07.2017
14:05:05
Тогда не получится использовать команды. Вопрос один - нужны ли команды

Джобс умер как Френк Синатра

Dmitriy
23.07.2017
14:08:05
Там где создашь там и будет слой
Смысл вытащить логику с контроллера и модели . а там ей не место и разбить ее на отдельные классы. Модель тяжело тестировать

Den
23.07.2017
14:11:52
Давай тогда начнем с логики. Что это такое?

Dmitriy
23.07.2017
14:12:15
Бизнес логика

Den
23.07.2017
14:12:58
Вынимание модели по slug - это бизнес логика?

Dmitriy
23.07.2017
14:14:00
нет.

Den
23.07.2017
14:14:27
Приведи, плиз, пример бизнес логики

Dmitriy
23.07.2017
14:15:55
Отправка почты. разные оповещения, обработка и сохранение чего-то в бд

Google
Den
23.07.2017
14:16:36
То есть create - это бизнес логика?

У меня эта операция находится в репозитории

Дмитрий Maestro
23.07.2017
14:18:16
Что такое репозиторий?

Den
23.07.2017
14:18:17
И я ее не собираюсь оттуда перемещать

Дмитрий Maestro
23.07.2017
14:18:36
В ларе не классический мвс?

Dmitriy
23.07.2017
14:20:23
То есть create - это бизнес логика?
Обработка и создание это уже БЛ

Den
23.07.2017
14:21:46
Для обращения внутрь модели я пишу методы в классе Model. Для обращения внутрь всей коллекции моделей я пишу методы в классе Repository

Create - изначально в репозитории

Для ограничения выборки использую класс Criteria

Для активных действий над коллекцией - класс Collection

Den
23.07.2017
14:24:53
Неа

Dmitriy
23.07.2017
14:25:08
Ну это было понятно

f4rt~
23.07.2017
14:25:09
?

Den
23.07.2017
14:25:19
Думаешь будут траблы?

Dmitriy
23.07.2017
14:25:48
?
у тебя триггер на слово тесты ?

Den
23.07.2017
14:25:51
Честно - не врубаюсь для чего они

f4rt~
23.07.2017
14:25:54
агась

Dmitriy
23.07.2017
14:26:09
тестозависимость она такая

Den
23.07.2017
14:26:20
у тебя триггер на слово тесты ?
Кстати - триггеры на слова в слаке ништяк

Google
Dmitriy
23.07.2017
14:26:33
Думаешь будут траблы?
Ну при тестировании ты бы делил логику между классами

Den
23.07.2017
14:27:12
Dmitriy
23.07.2017
14:27:58
Нее. Раз в модели что-то там выбирается и еще что-то делается

Den
23.07.2017
14:28:36
Модель обращается внутрь себя

Только

Давай я зашарю модуль и вы зацените. У меня ощущение, что мы говорим чуть разными словами

Dmitriy
23.07.2017
14:30:58
Можно

Den
23.07.2017
14:34:00
Не идеал, конечно ))

Dmitriy
23.07.2017
14:35:49
public function scopeLive(Builder $query) { return $query ->where('enabled', 1) ->where('publish_at', '<=', date('Y-m-d H:i:s')) ->orderBy('publish_at', 'DESC'); } Зачем из модели делать QueryBuilder ?

Den
23.07.2017
14:37:30
Вот я и говорю - не идеал там. Это тот полугодичный модуль - там есть ошибки. То что ты показываешь - должно быть в критерии

live()

Den
23.07.2017
14:40:46
Так молчите, аж страшно )

Dmitriy
23.07.2017
14:41:24
600 строк, много что-то На сколько я вижу модель это склад всячины и она выступает в роли QueryBuilder, Response(!!!!), модель знает что она еще что она кешируется хм.

Den
23.07.2017
14:42:58
Хорошо, можешь показать свою старенькую? Есть не под НДА?

Dmitriy
23.07.2017
14:43:39
любую модель ?

Den
23.07.2017
14:43:58
Что считаешь нужным

Dmitriy
23.07.2017
14:49:50
Ну модели пустые там ничего интересного.

https://gist.github.com/exileed/1ca3c26ca8a9d7f5c4bc255c122d5d20

это код этого бота

Google
Dmitriy
23.07.2017
14:50:17
/link@yetanotherstatsbot

Yet Another Stats
23.07.2017
14:50:18
https://yasb.exileed.com/t/laravel_pro

Dmitriy
23.07.2017
14:51:16
https://gist.github.com/exileed/7cb85920ea7f6336cd58a544af645d2a вот такой был раньше контроллер. Счас все ушло в еще 1 сервис. ибо выводов уже много

Den
23.07.2017
15:10:36
/link@yetanotherstatsbot

Whoops, looks like something went wrong.

Dmitriy
23.07.2017
15:12:13
Это я обновляю

Admin
ERROR: S client not available

Yet Another Stats
23.07.2017
15:14:36
https://yasb.exileed.com/t/laravel_pro

Юрий
23.07.2017
15:17:16
какой же блядский синтаксис изобразили для множественных юзов, простите

каждый раз как вижу блюй берет

use App\Supports\Telegram\Statistics\Chat\{ MessagePerDay, TopChats, TopMessageUsers, TopRatingUsers }

я про это

Den
23.07.2017
15:17:29
А какие критерии включает в себя оценка рейтинга?

Юрий
23.07.2017
15:17:53
@ExileeD кстати это иде поддерживает уже?

Юрий
23.07.2017
15:18:24
но все равно блевать тянет. как rfc увидел принятый офигел

Dmitriy
23.07.2017
15:19:04
А какие критерии включает в себя оценка рейтинга?
кол-во сообщений, тип, полезность для сообщества и т.д

Den
23.07.2017
15:19:05
Дизайн норм, мне понравился. Он обычно включен?

Dmitriy
23.07.2017
15:19:26
Он всегда включен, если я только не обновляю

Google
Den
23.07.2017
15:19:39
Я попробовал сейчас ответить на сообщение бота

Юрий
23.07.2017
15:19:40
Дизайн норм, мне понравился. Он обычно включен?
да вроде стата и сейчас доступна

https://yasb.exileed.com/t/laravel_pro

Den
23.07.2017
15:21:48
Прикольно, буду юзать нет-нет)

По коду скажу что разрядил бы пустыми строками кое где - это раз. Имхо - реально читаемей будет в трудных условиях (экран телефона, например).

Два - то что это просто перечисление действий в контроллере

Правильно?

Юрий
23.07.2017
15:25:19
wut?

я бы наоборот пустые строки выкинул



сколько мусора

Den
23.07.2017
15:26:15
я бы наоборот пустые строки выкинул
Именно поэтому я и говорю имхо

У меня такую херь форматтер вырезает

сколько мусора
Плеер на кофе лучше не светить, понял )))

Dave
23.07.2017
17:41:20
Жиесть

про сервисы мы не слышали

Den
23.07.2017
17:50:10
Да не знаю, код не мой, я просто навел там чуть порядка.

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