活动管理员:使用 belongs_to 的资源的专用索引页

Active Admin: dedicated index page for a resource that uses belongs_to

Rails 5 (Ruby 2.5.1), activeadmin 2.2.0

我有一个属于资源 A 的资源 B,因此我可以列出属于 A 实例的 B 的索引视图。

ActiveAdmin.register B do
  menu false
  belongs_to :A
end

ActiveAdmin.register A do
  menu 'A'
end

当我尝试为 B 的所有实例独立于 A 创建索引页面时,使用以下代码:

ActiveAdmin.register B do
  menu false
  belongs_to :A
  actions :index 

  index do
    id_column
  end
end

它不生成专用索引路径。 当我删除 belongs_to 虽然,我得到了一个专用路径和资源 B 的预期索引视图。 但是我失去了功能belongs_to.

附带的资源 A

如何保持关联并拥有资源B的通用索引页?

documentation 表示要实现此目的,您将 optional: true 传递给 belongs_to 指令。所以注册 B 就像:

ActiveAdmin.register B do
  menu false
  belongs_to :A, optional: true
  actions :index 

  index do
    id_column
  end
end

我整理了this应用来说明。