PHP: Делаем фильтры правильно на PHP Laravel - видео HD
00:22:51
Обнаружено блокирование рекламы на сайте
Для существования нашего сайта необходим показ рекламы. Просим отнестись с пониманием и добавить сайт в список исключений вашей программы для блокировки рекламы (AdBlock и другие).
12n.ru 18496 роликов
1653 просмотра на сайте 12n.ru
Делаем фильтры правильно на PHP Laravel - видео.
В данном видео я покажу вам правильный способ написания фильтров для ваших интернет-магазинов с использованием принципов SOLID. Вы можете применять этот метод не только в PHP или Laravel, а и в других языка программирования.
Репозиторий с кодом github.com/VladislavGroniuk/filters_app
Буду рад вашему лайку и подписке на мой канал! Обязательно поделись видео с друзьями, это лучше любых донатов.
Подписка на канал www.youtube.com/channel/UC1cS7V7DG3NKJzdQRmcZQMw
Репозиторий с кодом github.com/VladislavGroniuk/filters_app
Буду рад вашему лайку и подписке на мой канал! Обязательно поделись видео с друзьями, это лучше любых донатов.
Подписка на канал www.youtube.com/channel/UC1cS7V7DG3NKJzdQRmcZQMw
развернуть свернуть
Но, в видео ты упомянул "«OLID, но при этом в контролере ProductController у тебя почему-то забираются и категории товаров =D Здесь я бы рекомендовал использовать View Composer, чтобы отображать категории товаров, потому что потенциально у тебя могут добавиться теги, рейтинги, цены, производители и много других фильтров, и очень не правильно все эти фильтры выкидывать из одного контроллера. Уж если упомянул принципы, используй их
Надеюсь ты поймешь что я хотел узнать?)
но за тему спасибо.
вопрос был бы лучше раскрыт, если бы еще добавили валидацию. ибо новичкам сложно будет совместить фильтры и реквесты
1) Папку Filters лучше закидывать в App\Http\, а не в App\.
2) Не ясно зачем нужен метод paramToArray() и $delimeter к нему. Я их вырезал и ничего не пострадало.
3) Нельзя указывать фильтр входным параметром в метод контроллера. Понимаю, что это сделано для простого объяснения, но тут есть новички, которые будут так делать, не понимая что это не правильно. А неправильно это потому, что тогда некуда помещать валидацию. Вернее есть куда — в конструктор фильтра, но в таком случае теряется та самая единственность обязанностей. Получается, что фильтр не только фильтрует, но и валидирует. Тут вижу два варианта — создавать фильтр в теле метода контроллера, либо же создавать его в скопе. Второе спорно.