Задать вопрос

Есть ли Gem для назначения и проверки прав на любой экземпляр объект ActiveRecord?

При создании объекта, например, person, пользователь может выставить права на этот объект, например:
-доступ для всех
-только владелец
-выбрать пользователей, которым предоставляет доступ к объекту.

Как это реализовать - понятно. Но так как задача тривиальная, то, возможно, есть уже gem с похожей реализаций разрешений. Пересмотрел все gems в www.ruby-toolbox.com, но ни один из них не подходит.

Мне нужен вот такой алгоритм user1.can :read @person и сохранять в базу, а потом при user1.can? :read @person вытаскивать из базы права и проверять доступ. Существует что-то похожее?
  • Вопрос задан
  • 2581 просмотр
Подписаться 4 Оценить Комментировать
Решения вопроса 1
sck_v
@sck_v
exflow.io
Пригласить эксперта
Ответы на вопрос 4
@rda_1902 Автор вопроса
Я представляю таблицу примерно так
id
objectable_type
objectable_id
action
user_id integer
everyone boolean
only_owner boolean

Ну и методы can, can? добавить в модель User + предусмотреть методы удаление прав и назначение нескольких прав на один объект для одного пользователя + покрыть тестами и того день работы)

Завел топик, потому что ведь народ пишет гемы для добавления created_by и delete_by в модели, вроде мелочь 10 минутная, но все же время экономит)
Ответ написан
@rda_1902 Автор вопроса
Решил вопрос через cancan, более детально разобрался в геме. При первом изучение не до конца вникнул в гем(((
Ответ написан
Комментировать
@fuCtor
Ruby разработчик
Можно еще рассмотреть cancan в связке с rolify
Ответ написан
Комментировать
AdilA
@AdilA
Нравится кодить, изучаю go c echo
ну тогда ответ в студию, как ты это реализовал? желательно с кодом и примерами! или запись в бложике
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы