Создать роль на основе только экземпляра с Rolify - PullRequest
0 голосов
/ 07 июня 2018

Есть ли возможность создавать роли, которые мы можем назначать только экземплярам, ​​но не всему классу?Я хочу определить роль, ограниченную для экземпляра ресурса:

user = User.find(2)
user.add_role :moderator, Forum.first

Но я хочу избежать определения ролей, ограниченных для всего класса:

user = User.find(3)
user.add_role :moderator, Forum

Есть ли способ запретитьвторой выбор?

1 Ответ

0 голосов
/ 07 июня 2018

Я понятия не имею, что Rolify предусматривает для этого, но вы всегда можете использовать старый добрый рубин Module#prepend для этого:

User.prepend(Module.new do
  def add_role(role, target)
    raise "Not allowed" if target.is_a?(Class)
    super(role, target)
  end
end)
...