2010-07-20 5 views
1

Je souhaite la vérification d'un modèle belongs_to pour la permission. Un utilisateur ne devrait créer un blog, s'il est le propriétaire du projetComment puis-je vérifier les attributs appartenant à un modèle dans un fichier déclarative_authorization?

Code modèle

User 
    has_many :blogposts 
    has_many :projects 
end 

Project 
    has_one :blog 
    belongs_to :user 
end 

Blog 
    has_many :blogposts 
    belongs_to :project 
end 

Blogpost 
    belongs_to :user 
    belongs_to :blog 
end 

Et maintenant, la partie d'autorisation pertinente

User has_permission_on [:blog], :to => [:create, :new, edit, :update] do 
if_attribute :project_user_id => is {user.id} 
     end 

Le if_attribute est le problème, comment Je vérifie le modèle associé? (La ligne de code de if_attribute ci-dessus ne fonctionne pas parce que projet blog belongs_to et user_id est dans le project_model)

Merci à l'avance :)

Répondre

1

Merci au créateur,

if_attribute :project => {:user => is {user}}