Ruby on rails 活动管理员可以在Admin::AdminUsersControllershow中找到ActiveRecord::RecordNot

Ruby on rails 活动管理员可以在Admin::AdminUsersControllershow中找到ActiveRecord::RecordNot,ruby-on-rails,activeadmin,cancan,Ruby On Rails,Activeadmin,Cancan,我有以下几点: 能力.rb def initialize(user) if user.admin? can :manage, :all else can :manage, AdminUser, :id => user.id end end 以及在应用程序_controller.rb中: def access_denied(exception) redirect_to admin_dashboard_p

我有以下几点: 能力.rb

  def initialize(user)    
      if user.admin?
        can :manage, :all
      else
        can :manage, AdminUser, :id => user.id
      end
  end
以及在应用程序_controller.rb中:

def access_denied(exception)
  redirect_to admin_dashboard_path , :alert =>  exception.message
end
此外,我还在initializer/active_admin.rb中添加了用于活动管理的适配器:

  config.authentication_method = :authenticate_admin_user!
  config.authorization_adapter = ActiveAdmin::CanCanAdapter
  config.on_unauthorized_access = :access_denied 
当我转到他未被授权访问的url时,例如:。其给出的错误如下:

ActiveRecord::RecordNotFound in Admin::AdminUsersController#show
谁能给我指出正确的方向,因为我在这里错过了什么


提前感谢。

如果活动记录无法通过给定的id或id集找到记录,则会引发错误。请检查admin_users表中是否有id为1的条目。请参阅下图以更好地了解错误


我已经通过将active_admin gem升级为gem'activeadmin','0.6.3'解决了这个问题

是的,id存在于我的数据库用户中。id 1存在,但由于当前用户没有权限查看其他用户,这就是它给出错误的原因。@dinshawraje ok,似乎逻辑在某种程度上起作用。具有正确凭据的用户能否查看页面?