Сайт использует сервис веб-аналитики Яндекс Метрика с помощью технологии «cookie». Пользуясь сайтом, вы даете согласие на использование данной технологии.
Как должные выглядеть контроллеры в Laravel? Контроллеры это мосты между роутом, логикой и view. Контроллеры должны иметь минимум кода. У каждого класса своя ответственность - для этого применяются Serveices и Actions. #laravelконтроллеры#laravel#cutcode ❗️❗️❗️как делать сложные сайты на laravel? Это просто с cutcode! Поддерживай мой проект - Угостить меня кофе - buymeacoffee.com/cutcode 🤖🤖🤖Мой помощник Тэйлор готов выдать тебе подарок. Забирать тут - --------------------------------------------------------------------------------- ⏰ Таймкоды: 00:00 Введение и немного теории 00:56 Пример с Actions и Services 01:40 В чём разница между Actions и Services 02:12 Создаём Action 04:20 Создаём Service Друзья всех приветствую на канале Cutcode! В продолжение ролика по Service Container хочу рассказать о еще одной концепции, которая пришла не из Laravel. Но также популярна и среди Laravel разработчиков. Eсли вы будете ее использовать, то Вас всегда поймут и в целом это будет хорошей практикой. Коротко о сути: в хорошем приложении у каждого класса должно быть своя зона ответственности. Если мы говорим о контроллере то он не должен пестрить огромным полотном кода. Контроллер это такой мост между роутом, логикой и view либо респонсом. Поэтому логику необходимо разделять и выносить в отдельные классы. Рассмотрим пример опять-таки из админ. панели из курсов Laravel с нуля. Ссылку я добавлю обязательно в описание. Итак в нашем примере у нас есть ресурс-контроллер admin user, метод Update. Здесь некоторая логика с обновлением пользователя, мы обновляем пользователям, делаем какие-то манипуляции с паролем и синхронизируем роли пользователя. В чем суть? Есть также в ресурс-контроллере и метод store, который создает пользователя и здесь по-большему счету тот же самый функционал, та же самая логика. То есть мы уже здесь будем делать два дубля кода. Плюс как этот момент весь тестировать? То есть при юнит тестах мы должны еще создать третий дубль, где также всю эту логику перенесем и там протестируем. Такой подход не есть хорошо и на помощь нам может прийти концепция Actions и Service. В чем собственно их разница? Если брать Actions, то это очень напоминает Laravel Jobs, то есть если мы откроем Jobs в Ларавел, то у нас есть метод Handle, который выполняет какой-либо одно действие логическое. То же самое с Action и исходя из названия это одно действие. То есть мы создаем класс действие и в нем должен быть метод Handle, который будет выполнять это действие. Давайте посмотрим на примере. --------------------------------------------------------------------------------- 📹 делитесь этим видео с друзьями: • Laravel контроллеры: концепция Service и A... 🔔 подпишитесь на YouTube-канал: / @cutcoderu 📼 Курс по Laravel с нуля: • Курс по Laravel 8 обучение с нуля. Бесплат... Laravel контроллеры: концепция Service и Actions --------------------------------------------------------------------------------- 🔗 наш сайт: 📷 наш instagram: / cutcoderu 📱 Наш telegram-канал: