我正在使用rails和activeadmin创建应用程序。我想为管理员和非管理员用户使用相同的界面。
是否可以从activeadmin外部调用方法show,index,column,attribute_table等?
例如,我想为这样的用户创建一个索引页:
<%= index @users do
column :name
column :last_name
column :email do |user|
link_to user.email , user_path(user)
end
column :status
end %>
答案 0 :(得分:0)
可以使用ActiveAdmin定义整个应用程序。
步骤:
根据命名空间定义身份验证方法和当前用户:
#config/initializers/active_admin.rb
config.namespace :admin do |admin|
admin.authentication_method = :authenticate_admin_user!
admin.current_user_method = :current_admin_user
end
config.namespace false do |c|
c.authentication_method = :logged_in?
c.current_user_method = :current_user
end
配置文件夹:
#config/initializers/active_admin.rb
config.load_paths = [File.expand_path('app/admin', Rails.root), File.expand_path('app/users', Rails.root),]
使用app/admin
和ActiveAdmin.register Resource do
ActiveAdmin.register_page 'Page name' do
下的管理员定义网页和资源
使用app/users
和ActiveAdmin.register Resource , namespace: false do
ActiveAdmin.register_page 'Page name' , namespace: false do
下的非管理员用户定义网页和资源
醇>