如果不是管理员,ActiveAdmin重定向

时间:2015-11-06 10:18:36

标签: ruby-on-rails ruby-on-rails-4 activeadmin

我想为admin创建一个简单的重定向:false愿意转到/ admin页面的用户。我正在使用ActiveAdmin和一个带有admin:bool标志的用户模型。我尝试了以下方法:

在我的AA初始文件中

config.authentication_method = :authenticate_admin_user!

在我的App控制器中

def authenticate_admin_user!
  redirect_to root_path unless current_user.try(:is_admin?)
end

没有任何反应。

我还尝试在新的ActiveAdmin::AuthorizationAdapter中创建这样的自定义方法,但无法弄清楚如何使用它

def authorized?(action, subject = nil)
  user.admin?
end

1 个答案:

答案 0 :(得分:0)

试试这个。在我的情况下,有效管理员提供current_admin_user而不是current_user

def authenticate_admin_user!
  redirect_to root_path unless current_admin_user.try(:is_admin?)
end