Size: a a a

Laravel для начинающих

2020 February 25

DM

Dmitry M in Laravel для начинающих
Сложно
источник

DM

Dmitry M in Laravel для начинающих
Andrey Helldar
Задача контроллера - контролировать: откуда что пришло, что вызвать для обработки и в каком виде вернуть.

Сервис хранит всю бизнес-логику приложения.

Модель содержит только информацию о сущности.
>Задача контроллера - контролировать: откуда что пришло, что вызвать для обработки и в каком виде вернуть.

По поводу "что вызывать", контроллер должен в тупую вызвать какой-то 1 метод сервиса, отвечающий за комплекс действий с сущностями, разные проверки, условные операторы и т.д. (реализация бизнес кейса), или он (контроллер) уже в себе содержит управляющие конструкции и в зависимости от условий вызывает различные методы сервисов? (а это разве не БЛ в контроллере?)

>Модель содержит только информацию о сущности

Получается в данном случае она анимичная?
источник

4

4unkur in Laravel для начинающих
источник

AH

Andrey Helldar in Laravel для начинающих
Dmitry M
>Задача контроллера - контролировать: откуда что пришло, что вызвать для обработки и в каком виде вернуть.

По поводу "что вызывать", контроллер должен в тупую вызвать какой-то 1 метод сервиса, отвечающий за комплекс действий с сущностями, разные проверки, условные операторы и т.д. (реализация бизнес кейса), или он (контроллер) уже в себе содержит управляющие конструкции и в зависимости от условий вызывает различные методы сервисов? (а это разве не БЛ в контроллере?)

>Модель содержит только информацию о сущности

Получается в данном случае она анимичная?
По контроллерам смотри. Например, есть два возможных состояния: магазин закрыт и магазин открыт. В каждом из состояний свой набор правил обработки заказов и он отличается друг от друга. Таким образом, вызов того или иного метода сервиса должен осуществляться именно в контроллере.

Например:


$shop = $shop->is_open
 ? app(OpenedService::class)
 : app(ClosedService::class);

$result = $shop->get();
источник

D

DK in Laravel для начинающих
<script>
   window._locale = '{{ app()->getLocale() }}';
   window._translations = {!! cache('translations') !!};
</script>

меня пугает эта конструкция..
источник

D

DK in Laravel для начинающих
Ты рисуешь вуй в блейде?
источник

AH

Andrey Helldar in Laravel для начинающих
Dmitry M
>Задача контроллера - контролировать: откуда что пришло, что вызвать для обработки и в каком виде вернуть.

По поводу "что вызывать", контроллер должен в тупую вызвать какой-то 1 метод сервиса, отвечающий за комплекс действий с сущностями, разные проверки, условные операторы и т.д. (реализация бизнес кейса), или он (контроллер) уже в себе содержит управляющие конструкции и в зависимости от условий вызывает различные методы сервисов? (а это разве не БЛ в контроллере?)

>Модель содержит только информацию о сущности

Получается в данном случае она анимичная?
По поводу анемичности лучше к @Adelf32. Я такими словами не управляю))
источник

A

Adel in Laravel для начинающих
Dmitry M
>Задача контроллера - контролировать: откуда что пришло, что вызвать для обработки и в каком виде вернуть.

По поводу "что вызывать", контроллер должен в тупую вызвать какой-то 1 метод сервиса, отвечающий за комплекс действий с сущностями, разные проверки, условные операторы и т.д. (реализация бизнес кейса), или он (контроллер) уже в себе содержит управляющие конструкции и в зависимости от условий вызывает различные методы сервисов? (а это разве не БЛ в контроллере?)

>Модель содержит только информацию о сущности

Получается в данном случае она анимичная?
да. в таком случае она анемичная. у тебя данные лежат в одном месте, а код, работающий с ними, в другом.
источник

A

Adel in Laravel для начинающих
но добиться неанемичности с элоквентом крайне сложно
источник

A

Adel in Laravel для начинающих
вот скажи - ты юнит-тесты пишешь?
источник

AH

Andrey Helldar in Laravel для начинающих
Вскоре дойду до компа и скину готовый пакет, который из php файлов переводов автоматом компилит js))
источник

4

4unkur in Laravel для начинающих
а жсон фразы тоже учитывает?
источник

AH

Andrey Helldar in Laravel для начинающих
4unkur
а жсон фразы тоже учитывает?
Json - это вид структуры. Что значит "фразы"?
источник

P

PSYTRGLES in Laravel для начинающих
да их вроде много было
источник

4

4unkur in Laravel для начинающих
вариант с компиляцией у нас уже был. Не очень нравилось что надо yarn prod вызывать каждый раз как добавили/изменили фразы
источник

P

PSYTRGLES in Laravel для начинающих
а цепочкой нельзя вызывать? через точки?
источник

4

4unkur in Laravel для начинающих
Andrey Helldar
Json - это вид структуры. Что значит "фразы"?
/resources/lang/en.json и тп.
источник

4

4unkur in Laravel для начинающих
ну в ларке же можно просто __(‘My damn phrase’) и оно переведется если такой ключ естьв  жсон языковых файлах
источник

P

PSYTRGLES in Laravel для начинающих
лодаш тянется только из-за forEach?
источник

DM

Dmitry M in Laravel для начинающих
Adel
да. в таком случае она анемичная. у тебя данные лежат в одном месте, а код, работающий с ними, в другом.
Получается rich model исключает сервисный слой? Раз вся логика в сущностях. Но вроде в ddd есть как entity так и сервисы. Видимо они все же о разном?
источник