Size: a a a

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

2020 May 13

AH

Andrey Helldar in Laravel для начинающих
Здесь видна бизнес-логика, смешанная в одном методе. Я бы ее разбил на несколько, где каждый выполняет свою чётко поставленную задачу.
источник

И

Игорь in Laravel для начинающих
Andrey Helldar
Здесь видна бизнес-логика, смешанная в одном методе. Я бы ее разбил на несколько, где каждый выполняет свою чётко поставленную задачу.
суть не в этом. Класс с кучей методов или Класс с одним методом для одного конкретного действия?
источник

A

Adel in Laravel для начинающих
тут еще транзакции нет... видимо её должно обеспечивать что-то снаружи. но там возникнут и другие проблемы.
источник

И

Игорь in Laravel для начинающих
Adel
тут еще транзакции нет... видимо её должно обеспечивать что-то снаружи. но там возникнут и другие проблемы.
какие
источник

A

Adel in Laravel для начинающих
базы данных
источник

И

Игорь in Laravel для начинающих
я думаю, что транзакция в контроллере будет, как самый верхний слой
источник

A

Adel in Laravel для начинающих
ну хорошо. тогда возникнет куча проблем. начиная с того, что каждый кто вызывает этот класс должен обеспечить транзакцию.
источник

A

Adel in Laravel для начинающих
кроме того, там наверняка должны быть и другие вещи, например... да банально послать письмо этому юзеру.
источник

A

Adel in Laravel для начинающих
делать это в транзакции - не айс.
источник

AH

Andrey Helldar in Laravel для начинающих
Иван Лещенко
Это всё один класс?
Я вот тут echo увидел. Как представил что это в Лару пишут, так сердце ёкнуло.
источник

DE

Dmitry Eliseev in Laravel для начинающих
Andrey Helldar
Модель Laravel предоставляет все необходимые методы для работы с базой данных. Каждая модель отвечает за свой участок кода. Смешивать их - плохо. В Вашем коде, например, есть открепление записи фаворита, то есть действие над одной моделью из другой. Во-первых, это бизнес-логика, что-то к кому-то цеплять. Во-вторых, это неочевидное поведение, т.к. общение происходит в нелогичном для этого месте.

Если Вы так кичитесь своими знаниями ООП, дак выкиньте этот Laravel - это ж чемодан антипаттернов. На кой от Вам вообще нужен? Пишите свой код. Будет всё по канону... Вашему.

Начинаешь надоедать со своей инкапсуляцией. Мне по-барабану что и как называется. Я вижу принцип толстой модели, объединяющей в себе как работу с данными, так и бизнес-логику, включая работу с не родными данными из других моделей. Это плохо.
Если следовать Вашим принципам, то на фига вообще нужны контроллеры, сервисы, валидаторы?... Суйте всё в модели! Это ж инкапсуляция! Не отказывайтесь от своих принципов.
Привёл ссылки, по которым всё уже рассказал.
источник

ИЛ

Иван Лещенко... in Laravel для начинающих
Andrey Helldar
Я вот тут echo увидел. Как представил что это в Лару пишут, так сердце ёкнуло.
Да там скорее общий пример, фреймворко-независимый
источник

AH

Andrey Helldar in Laravel для начинающих
Иван Лещенко
Да там скорее общий пример, фреймворко-независимый
Предполагаю что это так, иначе бы не было смысла. Но испуг не откатить)
источник

ИЛ

Иван Лещенко... in Laravel для начинающих
Andrey Helldar
Предполагаю что это так, иначе бы не было смысла. Но испуг не откатить)
)
источник

DE

Dmitry Eliseev in Laravel для начинающих
Andrey Helldar
Я вот тут echo увидел. Как представил что это в Лару пишут, так сердце ёкнуло.
Ну как-бы смотреть надо со включенным звуком и сначала, а не просто слайды листать справа налево.
источник

И

Игорь in Laravel для начинающих
Adel
кроме того, там наверняка должны быть и другие вещи, например... да банально послать письмо этому юзеру.
тогда что делать? завернуть в транзацию прямо в методе, а письмо отправить рядышком? (или выкинуть эвент)
источник

RK

Roman Kolosov in Laravel для начинающих
вот переписать ради прикола в то в как я это вижу например?
источник

И

Игорь in Laravel для начинающих
Да это просто пример
источник

A

Adel in Laravel для начинающих
Игорь
тогда что делать? завернуть в транзацию прямо в методе, а письмо отправить рядышком? (или выкинуть эвент)
в итоге мы начинаем понимать, что такой класс делает две вещи ) логику.. и еще с базой данных работу. и ещё кое-чего.
источник

DE

Dmitry Eliseev in Laravel для начинающих
Andrey Helldar
Я вот тут echo увидел. Как представил что это в Лару пишут, так сердце ёкнуло.
Если заменить на {{ ... }} или <?= ... ?> то будет лучше?
источник