我不想违反MVC,我想要实现以下内容:我正在使用ActiveAdmin滚动自己的授权库。现在,我想禁用当前用户无法访问的所有ActiveAdmin操作。看起来像这样:
visible_actions = [:index, :show, :new].reject{|action| !AdminUser.first.can_access?("admin/privileges", action.to_s) }
ActiveAdmin.register Privilege do
actions *visible_actions
... <other stuff>
end
但是我不想使用AdminUser.first来访问当前用户。解析我的代码时,Devise的身份验证过程已经完成。所以current_user应该已经知道了。但我找不到以干净的方式访问current_user的方法。
有什么办法吗? Thx提前。菲利克斯