Мне нужно создать системы разрешений на основе ролей в моем приложении Rails. Я был бы полностью доволен CanCan, но главная проблема - она должна быть динамичной, поэтому администратор должен иметь возможность назначать разрешения и создавать новые роли. Разрешения могут быть простыми ограничениями для контроллера/действия и могут быть связаны с данными, например, некоторые пользователи могут редактировать только свои собственные профили, а некоторые из них могут редактировать профили всех пользователей в конкретной группе. И было бы неплохо позволить администратору создавать новые разрешения.
То, о чем я думаю, это хранить в db контроллер/действие и некоторые ограничения, связанные с данными (я действительно запутался здесь, чтобы определить их). Так что, пожалуйста, дайте мне несколько советов, как лучше всего организовать разрешения?
Любые мысли очень ценятся