Question

J'ai un petit problème avec autorisation de déclaration.J'ai un modèle d'utilisateur et de rôle avec une association HAS_AND_BELONGS_TO_MANY.

J'ai créé un rôle nommé: modérateur dans mon autorisation_rules.rb

est-il possible qu'un utilisateur avec le rôle modérateur ne reçoit que les utilisateurs qui ont le rôle de modérateur attribué à celui-ci ??-> utilisateur.with_permissions_to (: index)

Je pensais que ce serait possible comme ça:

role :moderator do
  has_permission_on :users, :to => :index do
    if_attribute :roles => contains { ????? }
  end
end

J'ai aussi créé un nommé_scope dans mon modèle d'utilisateur parce que je pensais que cela aiderait ...

class User
  has_and_belongs_to_many :roles
  named_scope :by_role, lambda { |role|
    {
      :include => :roles,
      :conditions => {"roles.name" => role}
    }
  }
end

Est-ce que quelqu'un sait s'il est possible de le faire avec déclaratif_authorisation?

Merci pour votre aide!

Était-ce utile?

La solution

I did something similar in one of my projects but found dec_auth really confusing at the time. I think this is what you need to do:

authorization_rules.rb:

role :moderator do
  has_permission_on :users, :to => :index
end

User Model:

class User < ActiveRecord::Base
  using_access_control
end

Controller:

@users = User.with_permissions_to(:index)

Let me know if that doesn't work.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top