Я пытаюсь создать боковую панель в своем проекте CMS для инструментальной панели, которую я создаю с помощью Laravel, с несколькими ссылками на разные страницы. Некоторые из этих ссылок требуют, чтобы вошедший в систему пользователь имел определенную роль, чтобы видеть их на боковой панели и даже иметь возможность посещать их, даже если они пытаются получить к ним прямой доступ.
Я пытаюсь выяснить, какие вещи я должен делать, чтобы они могли видеть только те определенные страницы на основе их role_id и блокировать их от просмотра, если они попытаются посетить страницу напрямую.
Моей первоначальной мыслью было просто попытаться использовать операторы if везде, но это становится все более проблематичным, поскольку у меня больше ссылок.
Допустим, у меня есть следующие роли и идентификаторы с этими ролями.
id - role_name
1 basic user
2 editor
3 admin
4 super admin
Допустим, у меня также есть следующая структура навигации.
Dashboard
Category 1
Link 1
Link 2
Category 2
Link 3
Link 4
Link 5
Link 6
Category 3
Link 7
Link 8
Link 9
Link 10
Есть ли лучший способ обрабатывать навигационные ссылки с требованиями определенных идентификаторов ролей, чем просто помещать целую кучу операторов if по всему моему коду?
Вы можете найти похожую функциональность в LaraAdmin.
Проверьте LaraAdmin — админ панель для laravel. Вы можете дать разрешения для модулей меню
и только разрешенные меню будут видны.
Других решений пока нет …