在class ability.rb中,如何为这些用户(admin,user,guest)写权限?
解决方法 Cancancan允许您仅定义给定上下文的权限.此上下文可能是一个用户角色,它不是cancancan的一部分,因此角色必须由您自己定义.有多种方法可以定义用户角色,例如
>作为角色模型,
> Rails enum,
>按照建议here,
>作为用户模型的字符串属性.
这完全取决于用例.可以在here找到如何定义能力的示例.在您的情况下,它看起来像:
class Ability include CanCan::Ability def initialize(user) user ||= User.new if user.revIEwer? #Just a logged user can :manage,Comment,{ owner_ID: user.ID } elsif user.admin? can :manage,:all end endendclass User < ActiveRecord::Base enum role: [ :revIEwer,:admin ]end总结
以上是内存溢出为你收集整理的ruby-on-rails – 如何使用cancancan?全部内容,希望文章能够帮你解决ruby-on-rails – 如何使用cancancan?所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)