Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/67.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 未定义的方法`authenticate\u admin\u user';当访问activeadmin时_Ruby On Rails_Activeadmin - Fatal编程技术网

Ruby on rails 未定义的方法`authenticate\u admin\u user';当访问activeadmin时

Ruby on rails 未定义的方法`authenticate\u admin\u user';当访问activeadmin时,ruby-on-rails,activeadmin,Ruby On Rails,Activeadmin,更新我的activeadmin后,我无法进入管理面板,我的管理用户存储在名为admin\U users的表中 NoMethodError in Admin::DashboardController#index undefined method `authenticate_admin_user!' for #Admin::DashboardController:0x007fe46c3d99d0 Rails.root: /Users/jianbo/Documen

更新我的activeadmin后,我无法进入管理面板,我的管理用户存储在名为admin\U users的表中

      NoMethodError in Admin::DashboardController#index

      undefined method `authenticate_admin_user!' for #Admin::DashboardController:0x007fe46c3d99d0
      Rails.root: /Users/jianbo/Documents/Aptana Studio 3 Workspace/iv

      Application Trace | Framework Trace | Full Trace
      activeadmin (0.6.2) lib/active_admin/base_controller.rb:40:in authenticate_active_admin_user'
      activesupport (3.2.15) lib/active_support/callbacks.rb:474:inblock in run_3994836635519503653__process_action__2211030722258422070__callbacks'
      activesupport (3.2.15) lib/active_support/callbacks.rb:215:in `block in conditionalcallback_around_863'

作为ActiveAdmin配置的一部分,您需要在ApplicationController上定义一个方法,该方法需要身份验证并确定用户是否是管理员(因此可以访问ActiveAdmin页面)。此方法的名称可由ActiveAdmin初始值设定项中的此设置控制:

config.authentication_method = :authenticate_admin_user!
此方法的默认名称为authenticate\u admin\u user


如果您已经有了一个验证用户身份并确认他们是管理员的方法,只需更新配置以使用该方法。否则,您需要在ApplicationController上创建此方法

我注意到active\u admin中的代码已初始化,但我没有修改任何代码,为什么突然出现错误?在我的情况下,我没有任何自定义管理员身份验证,所以我不应该更改该配置,对吗?那我该怎么办呢?我不知道您从哪个版本升级,但可能是在以前的版本中有一个默认方法。在任何情况下,只要定义该方法,它就会工作。你在用Desive吗?你用什么方法来认证普通用户?