1

嗨,这是我第一次使用活动管理员,我有两个模型:

  1. 病人
  2. 属性

患者具有_many属性的位置

我创建了一个这样的患者资源:

rails g active_admin:resource patient

但是,它似乎工作正常:查询活动管理员正在创建:

Patient Load (0.9ms)  SELECT "patient".* FROM "patient" ORDER BY "patient"."id" desc LIMIT 30 OFFSET 0
Attribute Load (1878.2ms)  SELECT "attributes".* FROM "attributes"

问题在于第二个,因为我有大约 200 000 个属性,所以 SELECT * "attributes" 正在杀死我的计算机。

我一直在寻找关于如何限制第二个查询的一个小时。任何帮助表示赞赏。谢谢。

4

1 回答 1

1

所以我弄清楚了为什么查询试图选择所有属性。

默认情况下,ActiveAdmin 尝试创建过滤器区域并检索 belongs_to 关联的所有可能性以创建下拉列表。

为了解决这个问题,我编写了一个自定义过滤器,它排除了以下属性:

filter :name
于 2013-07-14T21:03:00.837 回答