Ruby on rails NoMethodError(未定义的方法'authenticate#u admin_user!';for#<;admin::DashboardController
我们正在使用Ruby 2.1、rails 3.2和active admin 0.6.3。我们的网站在前端启动并运行,但在尝试访问管理面板时,它显示:Ruby on rails NoMethodError(未定义的方法'authenticate#u admin_user!';for#<;admin::DashboardController,ruby-on-rails,activeadmin,ruby-2.1,Ruby On Rails,Activeadmin,Ruby 2.1,我们正在使用Ruby 2.1、rails 3.2和active admin 0.6.3。我们的网站在前端启动并运行,但在尝试访问管理面板时,它显示: "NoMethodError (undefined method `authenticate_admin_user!' for Admin::DashboardController" 我试着在网上搜索解决方案,但都没有成功 有什么建议吗 编辑:管理员用户模型 ActiveAdmin.register AdminUser do #m
"NoMethodError (undefined method `authenticate_admin_user!' for Admin::DashboardController"
我试着在网上搜索解决方案,但都没有成功
有什么建议吗
编辑:管理员用户模型
ActiveAdmin.register AdminUser do
#menu :priority => 2
menu false
index :title => 'Admin Users'+SiteSetting.site_title do
column :email
column :role do |show|
if show.role=="superadmin"
status_tag('Super Admin', :ok)
elsif show.role=="subadmin"
status_tag('Sub Admin', :ok)
elsif show.role=="customeadmin"
status_tag('Custom Admin', :ok)
else
status_tag('Normal Admin', :ok)
end
end
column 'Current Login', :current_sign_in_at
column 'Last Login', :last_sign_in_at
column 'Login count', :sign_in_count
#current_admin_user[:id]
@count = AdminUser.count
if @count == 1
column do |show|
links = link_to 'View', {:action => show.id.to_s}
links += ' '
links += link_to 'Edit', {:action => show.id.to_s+'/edit'}
links
end
else
default_actions
end
end
controller do
def password
render :text => 'test'
end
def new
@admin_user = AdminUser.new
end
def create
@temp = params[:admin_user][:role_permission]
if @temp ==nil
else
@new_per = @temp.join(',')
params[:admin_user][:role_permission] = @new_per
end
@admin_user = AdminUser.new(params[:admin_user])
@admin_user.save
redirect_to(:action => 'index')
end
def edit
@admin_user = AdminUser.find(params[:id])
end
end
filter :email
sidebar :AdminUserRights do
ul do
li "Super Admin: Can Manage All Pages"
li "Sub Admin: Can Only View And Update All Pages"
li "Normal Admin: Can Only View All Pages"
li "Custom Admin: Customize your admin via giving them custom rights of links"
end
end
form :html => { :enctype => "multipart/form-data" } do |f|
render "create" , :layout => 'active_admin'
end
end
def authenticate_active_admin_user!
authenticate_admin_user!
unless current_admin_user.role?(:superadmin)
flash[:alert] = "You are not authorized to access this resource!"
redirect_to root_path
end
end
我已将此代码添加到我的应用程序控制器文件中。
编辑:应用程序控制器
ActiveAdmin.register AdminUser do
#menu :priority => 2
menu false
index :title => 'Admin Users'+SiteSetting.site_title do
column :email
column :role do |show|
if show.role=="superadmin"
status_tag('Super Admin', :ok)
elsif show.role=="subadmin"
status_tag('Sub Admin', :ok)
elsif show.role=="customeadmin"
status_tag('Custom Admin', :ok)
else
status_tag('Normal Admin', :ok)
end
end
column 'Current Login', :current_sign_in_at
column 'Last Login', :last_sign_in_at
column 'Login count', :sign_in_count
#current_admin_user[:id]
@count = AdminUser.count
if @count == 1
column do |show|
links = link_to 'View', {:action => show.id.to_s}
links += ' '
links += link_to 'Edit', {:action => show.id.to_s+'/edit'}
links
end
else
default_actions
end
end
controller do
def password
render :text => 'test'
end
def new
@admin_user = AdminUser.new
end
def create
@temp = params[:admin_user][:role_permission]
if @temp ==nil
else
@new_per = @temp.join(',')
params[:admin_user][:role_permission] = @new_per
end
@admin_user = AdminUser.new(params[:admin_user])
@admin_user.save
redirect_to(:action => 'index')
end
def edit
@admin_user = AdminUser.find(params[:id])
end
end
filter :email
sidebar :AdminUserRights do
ul do
li "Super Admin: Can Manage All Pages"
li "Sub Admin: Can Only View And Update All Pages"
li "Normal Admin: Can Only View All Pages"
li "Custom Admin: Customize your admin via giving them custom rights of links"
end
end
form :html => { :enctype => "multipart/form-data" } do |f|
render "create" , :layout => 'active_admin'
end
end
def authenticate_active_admin_user!
authenticate_admin_user!
unless current_admin_user.role?(:superadmin)
flash[:alert] = "You are not authorized to access this resource!"
redirect_to root_path
end
end
“authenticate\u admin\u user!”是一个活动的管理员gem方法?还是你自己的方法?你能更新你的路由文件吗?和AdminUser model吗?@Rubyrider这不是你在堆栈溢出中标记代码的方式。停止使用
``
,这在这里没有任何意义。哦,对不起,我把githubs的东西弄混了!对不起,我会从现在开始避免它。谢谢你清除它。I'v添加了应用程序控制器的方法以及adminuser模型代码。