1
Je me demande comment implémenter une certaine logique d'autorisation dans une application Rails 2.3.8.Comment appliquer des autorisations
Par exemple, un utilisateur peut uniquement modifier les tâches créées par l'utilisateur (alias "owns").
dois-je faire quelque chose comme ceci:
user.can_edit_task(task)
ou ceci:
task.can_be_edited_by?(user)
#Method needs to be passed in a user object (from controller). But then how
#can I access the current user in a "before_save" filter as below :
.
def User
before_save: check_permissions!
def check_permissions
#this way?
raise some_exception if task.can_be_edited_by?(user)
#or this way?
raise some_exception if self.can_edit_task?(task)
end
end
Des conseils sur comment faire à ce sujet?
Ca ne semble pas que CanCan puisse faire ce dont j'ai besoin .. pouvez-vous m'aider? – Zabba
mieux serait de regarder ce screencast http://railscasts.com/episodes/192-authorization-with-cancan – mpapis
+1 CanCan, comment peut-il ne pas faire ce dont vous avez besoin? – Jonathan