Роли, Права, Авторизация в Laravel. Необходимые знания для понимания Gates и Policies. Часть 1
В сегодняшнем ролике я расскажу про авторизацию и разделение прав пользователей. Создадим простую ролевую модель, а также поработаем с Gates и Policies.
#авторизация#laravel#cutcode
---------------------------------------------------------------------------------
❗️❗️❗️Присоединяйся к нашему комьюнити в телеграм - там и советом помогут и много интересного -
🤖🤖🤖Мой помощник Тэйлор готов выдать тебе подарок. Забирать тут -
---------------------------------------------------------------------------------
⏰ Таймкоды:
00:00 Введение и содержание выпуска
00:35 Что нам потребуется
01:45 Теория по авторизации. Gates и Policies
03:30 Создание Gate.
05:00 Кнопки удалить и редактировать
09:32 Метод authorize
12:52 Метод inspect
13:52 Способ от текущей модели с пользователем
15:00 Метод before для полного доступа администратору
Всех поклонников Laravel я приветствую на канале Cutcode! Cегодня в выпуске: авторизация в Laravel: базовые знания разделения прав пользователей - создадим простую ролевую модель, поработаем с Gates и Policies, поговорим о их концептуальных отличиях и когда что применять. Воспользуемся всеми необходимыми методами работы с авторизацией, пройдемся так сказать по основам.
Что нам потребуется? В основе примера будем использовать админ панель из курса Laravel с нуля. Далее необходимо будет создать простую миграцию с таблицей ролей, где у нас будет просто название ролей: администратор менеджер и так далее. И связующую таблицу для связи belongs to many, админ пользователя и роли. Напомню, что такие таблицы создаются путем конкатенации названия таблиц в единственном числе в алфавитном порядке. В нашем случае это админ user нижнее подчёркивание roll.
Далее мы создаем в админ user отношения к нашим ролям belongs to many. Кстати id здесь не нужен, times temp здесь не нужен тоже самое как и здесь два метода вот этих using и whisTimeStamps, это у нас пришло с другого урока когда мы работали с апдейтом где я рассказывал о нововведениях touch и как он работает. В нашем случае эти моменты вы можете не использовать.
Друзья, немного теории обворовал есть два инструмента по работе с авторизацией, по работе с разделением прав: это gates и policies. Когда их стоит применять? ну скажем как и здесь в документации указано у вас есть CRUD система, есть пользователя и некоторым пользователям нужно запретить удалять записи либо редактировать, либо где-то просматривать, не важно: дать какие-либо запреты и тогда на помощь нам приходят либо gateы либо policies.
Когда что нужно применять и что за что отвечает. То есть по сути это одно и то же, но gateы даже как указано документации это отличный способ понять основы Laravel авторизации, однако при разработке более серьезных приложений на Laravel стоит использовать политики. Но по факту можно использовать смешанный подход, если вдруг вам нужен какой-то небольшой один метод по ограничению, тогда используйте gates, если же у вас политика на всю модель, на базовые eloquent-методы: создания, обновления, удаления и так далее, то конечно же на помощь придет и будет намного лучше использовать policies (политики).
Еще немного примеров для понимания общей картины: gates у нас даже исходя из названия скажем так ворота, у которых два состояния: либо они закрыты, либо открыты. И пропускают в эти ворота только под определенными условиями: скажем так стоит охрана на входе и проверяет, а вот политики здесь уже более цивилизованный подход: в основе те же самые gates, только правило условия входа объединены в общий устав. Давайте меньше слов перейдем к практике.
---------------------------------------------------------------------------------
📹 делитесь этим видео с друзьями:
🔔 подпишитесь на YouTube-канал:
📼 Курс по Laravel с нуля:
Роли, Права, Авторизация в Laravel. Необходимые знания для понимания Gates и Policies. Часть 1
---------------------------------------------------------------------------------
🔗 наш сайт:
📷 наш instagram: 📱 Наш telegram-канал:
1 view
817
233
46 minutes ago 00:01:32 1
[GTA5RP] GTA5RP: НОВЫЙ СЕЗОННЫЙ ПРОПУСК «ЗИМА’24» / ЭКСКЛЮЗИВНЫЕ АВТОМОБИЛИ И УНИКАЛЬНЫЕ ПРИЗЫ
55 minutes ago 04:41:47 1
[galkovsky] Стрим #58 (2) “Наверстываем“
1 hour ago 02:03:23 5
[Harons] ГЛАВНЫЕ МАФИОЗИ СЕРВЕРА! ВЫИГРЫВАЕМ ТУРНИР на 1 000 000 РУБ - Rust | Раст
2 hours ago 00:01:24 1
[Kinoman] Эмма — Русский трейлер (2020)
2 hours ago 00:01:00 1
[Kinoman] Пила: Начало — Русский трейлер (2020)
2 hours ago 00:22:21 5
[Potapych] КАК ПРАВИЛЬНО НАЧАТЬ ИГРАТЬ на МОЙ ДОМ РП ГТА 5 & ЛУЧШИЙ СТАРТ (Мой Дом РП) RADMIR RP ГТА 5!