可以将动作按钮添加到activeadmin上的仪表板表中吗?

时间:2016-04-04 20:23:53

标签: ruby activeadmin

我有这个代码在activeadmin Dashboard上创建一个表:

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”标记,但是我得到了一个未定义的方法。

2 个答案:

答案 0 :(得分:3)

table_for用于呈现可能不一定是ActiveRecord对象的对象集合,因此操作方法不像index操作中那样可用。但是,您应该可以使用以下内容呈现自己的操作:

column("View User") { |user| link_to "View", user_path(user) }

编辑对于多个链接,您可以使用Arbre的span标记包裹link_to

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,我没有在早期版本上尝试过。

答案 1 :(得分:1)

你也可以试试这个:

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

对我来说,更多选项比已经定义的更多选项查看编辑删除

来源:https://github.com/activeadmin/activeadmin/issues/53