我有基本的间隙设置 -
rails generate clearance:install
和
rails generate clearance:views
在我的admin_controller中,我有
before_filter :authorize
这可确保用户已登录。如何为用户设置“admin”权限,并确保用户在允许用户进入管理控制器之前具有权限?
对此有更好的解决方案吗?
谢谢!
安德鲁
答案 0 :(得分:6)
我有同样的问题,但cancan
对我来说似乎太过分了(小项目)
实际上authorize
的{{3}}非常简单,所以我的方法就在这里:
在初始化程序中打开Clearance::Authorization
模块,然后在其中添加自定义方法:
# config/initializers/clearance_authorization.rb
module Clearance
module Authorization
extend ActiveSupport::Concern
def authorize_admin
unless(signed_in? && current_user.admin?)
deny_access
end
end
end
end
不要忘记重启服务器:)
答案 1 :(得分:2)