我有这个代码在activeadmin仪表板上创建一个表:
columns do
column do
panel "New Mentor's requests" do
table_for User.where(mentor_request: true) do |t|
t.column("Id") { |user| user.id }
t.column("Name") { |user| user.account.full_name }
t.column("Email") { |user| user.account.email }
t.column("Organization") { |user| user.organization.name }
end
end
end
end
有没有办法像其他资源一样添加“动作”?我的意思是“新的,编辑,删除”,但一个自定义的。
我尝试了“actions”标签,但是我得到了一个未定义的方法。
table_for
用于渲染对象的集合,这些对象可能不一定是ActiveRecord对象,因此动作方法不像index
动作那样可用。但是,您应该能够使用以下内容呈现自己的操作:
column("View User") { |user| link_to "View", user_path(user) }
编辑对于多个链接,您可以使用Arbre的span标记包装link_to
s:
column("View User") do |user|
span link_to "View", "/mypath"
span link_to "Edit", "/mypath"
span link_to "Delete", "/mypath"
end
我正在使用ActiveAdmin 1.0.0.pre2 w / arbre 1.0.2,我没有在早期版本上尝试过。
你也可以试试这个:
ActiveAdmin.register Foo do
actions :all
index do
column :name
actions defaults: true do |foo|
link_to "Custom ACTION", custom_action_path(foo.id)
end
end
end
我有更多的选择,而不是已经定义的选项:查看,编辑,删除