我在rails 4.2应用程序中使用active-admin(AA, 1.0.0)。我正在显示在线用户列表。我必须显示一个用户列表,根据user模型字段显示每种类型的用户和过滤器的作用域。此外,我需要在另一个页面上显示在线用户列表。
User(dropdown)
=> Accounts
=> Online Users
显示用户列表,我使用
ActiveAdmin.register User, as: 'User' do
menu :parent => "Users", :label => "Accounts"
...
end
显示在线用户列表,我使用
ActiveAdmin.register User, as: 'Online User' do
menu parent: "Users", label: "Online Users", url: '/admin/online_users'
actions :index
filter :id
filter :name
filter :email
...
end
现在,过滤器被正确地显示在"Online Users"页面上,但是当提交过滤器表单时,它被提交到"/admin/Users"而不是"/admin/online_users"。我可以将url传递到过滤器表单吗?如果不是,那么解决这个问题的正确方法是什么?
谢谢。
您可以像这样重新定义过滤器表单构建器使用的collection_path
方法:
controller do
def collection_path
admin_online_users_path
end
end