Форум программистов, компьютерный форум, киберфорум
PHP: Laravel
Войти
Регистрация
Восстановить пароль
 
0 / 0 / 0
Регистрация: 24.02.2019
Сообщений: 81
1

Где в приложении грамотно присвоить роль пользователю?

12.12.2020, 10:48. Просмотров 249. Ответов 2

Здравствуйте.
Использую библиотеку spatie/laravel-permission для установки прав и разрешений в своем приложении. Как создавать роли и разрешения, мне понятно.
Вопрос заключается, в каком месте приложения применить функцию: $user->assignRole('writer');?

Суть вопроса в том, как сделать, чтобы присвоение роли пользователю выполнялось ОДИН раз.

П.С. Есть мысль создать middleware, который будет присваивать текущему аутентифицированному пользователю заданную роль. Устанавливать роль в контроллере, мне видится, неоптимальным решением.
Есть мысль, поместить код с метод boot в провайдер AuthServiceProvider. Но я пока плохо понимаю, как он работает.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
12.12.2020, 10:48
Ответы с готовыми решениями:

yii где привязать роль к пользователю
в каком месте кода привязывать роль к конкретному пользователю(assign(...) у AuthManager)?...

какова роль BC4J в простеньком веб-приложении?
Есть приложение, которое состоит из одной JSP страницы и из одной HTML-формы на этой странице....

Как грамотно сделать вывод графики в оконном приложении?
Поясните, пожалуйста, как грамотно сделать вывод графики в оконном приложении. Мне надо...

Программно задать роль пользователю
У пользователя базы данных(не серверноо пользователя, а именно базы данных) есть такие понятия,...

2
1712 / 1038 / 386
Регистрация: 13.06.2013
Сообщений: 3,525
12.12.2020, 18:05 2
Логично что роль задается при создании или редактировании пользователя. Соответственно это делается в контроллере или в сервисном слое, тут уже от вашей архитектуры зависит.

Цитата Сообщение от xat55 Посмотреть сообщение
middleware, который будет присваивать текущему аутентифицированному пользователю заданную роль
Зачем? middleware на каждый запрос срабатывает. А роль достаточно один раз назначить и всё. Дальше только проверять есть она или нет.
0
0 / 0 / 0
Регистрация: 24.02.2019
Сообщений: 81
22.12.2020, 21:00  [ТС] 3
Цитата Сообщение от tarasalk Посмотреть сообщение
Соответственно это делается в контроллере или в сервисном слое
Я в Ларавел сделал стандартную аутентификацию. Поэтому, процесс создания нового пользователя происходит где-то в глубине фреймворка.
Сделал присвоение роли пользователю в посреднике.

Покритикуйте меня))
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
22.12.2020, 21:00

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Где найти грамотно изложенные правила лексики и синтаксиса SQL со всеми мелкими деталями
Добрый вечер. Я осознаю глупость вопроса, но подскажите пожалуйста где найти в одном месте...

Нельзя присвоить пароль пользователю
Доброе время суток! На сервере создал пользователя чтобы разрешить пользователю использование FTP...

Присвоить новому пользователю уникальный номер
Здравствуйте! Нужно чтобы при регистрации данные пользователя записывались в базу и ему...

Присвоение кода пользователю приложении django
Например создается имитация платежа. Как можно сделать так, чтобы каждом юзеру при регистрации...

Где располагаются стикеры в приложении?
Где располагаются стикеры в этом приложении приложении? (архив с картинками или ссылки на них) ....

Где лучше хранить рисунки в приложении?
Доброго дня. В моём приложении будет пакет рисунков. Куда их лучше положить, в res\drawable или в...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2021, vBulletin Solutions, Inc.