2016-08-16 5 views
0

Я работаю в проекте Yii с 4 или 5 ролями. Где каждая роль имеет доступ к подобным формам и представлениям, но не видит все поля. Также есть отчеты, которые предназначены только для ролей уровня управления.Как обрабатывать разрешения на роль

В прошлом я управлял разрешениями на основе управления полем, чтобы избежать повторения кода, но это попадает в кошмар.

Мой вопрос: какой лучший подход вы использовали для разрешения разрешений? на поле или на просмотр?

Я думал о создании разных представлений, и администратор может выбрать, какие из них назначать каждой роли.

Любые идеи, которые вы можете принести, помогут мне.

ответ

1

Используйте модуль RBAC http://www.yiiframework.com/doc-2.0/guide-security-authorization.html

После того, как вы определили вам роли и разрешения, вы можете использовать функцию, предоставленную Yii2 для показа/скрытия поле, нужно или для свинца код поведения

+0

Спасибо за ваш ответ. Я использовал RBAC, но мне хотелось бы узнать ваше мнение о том, какой подход лучше для каждого поля или для представления? – Eduardo

+0

Я думаю, что в поле более продвинутое использование RBAC –

+0

Я использую и то, и другое. И с хорошей оценкой легко найти быстрое решение в любой ситуации .. для поля часто параметр, такой как acitive для связи с функцией Yii :: $ app -> User-> can ('your_rule'), а также для просмотра, вы можете легко обучить поведение с помощью нескольких проверок. – scaisEdge

Смежные вопросы