Rails 3 динамических роли пользователя / уровни доступа

Я разрабатываю приложение, которое будет использоваться учителями для управления заданиями и представлениями студентов. Тем не менее, в разных школах существуют разные стандарты подачи заявок, оценки, то, что ученики должны и не должны делать. Поэтому я хотел внедрить в свое приложение некоторые гибкие функции управления ролями, чтобы учителя могли точно определить, какие привилегии пользователь должен и не должен иметь.

Одним из быстрых решений этого может быть просто добавить некоторые булевы поля в мою модель User, которыми учителя могут манипулировать с помощью флажков, и запустить before_filter для соответствующих действий контроллера. В качестве альтернативы я мог бы перенести определения ролей в отдельную модель, принадлежащую учителям, и запустить для этого before_filter.

Прежде чем пытаться реализовать какое-либо из этих решений, мне было интересно, есть ли какие-нибудь гемы или плагины, которые уже обрабатывают гибкие определения ролей, управляемых пользователями?

В качестве дополнительного примечания я использую Devise для аутентификации, если это что-то значит.

1 ответ

Решение

Я нашел этот драгоценный камень весьма полезным. https://github.com/EppO/rolify
И у этого есть способ легкой интеграции с Devise и CanCan https://github.com/EppO/rolify/wiki/Tutorial

Другие вопросы по тегам