ActiveAdmin元搜索过滤器 - 按关联ID选择下拉列表过滤

时间:2013-11-25 19:45:03

标签: ruby-on-rails ruby activeadmin meta-search

我有这样的模型设置:

  • Sale属于Product
  • Product属于Varietal

现在我想为销售品种制作一个选择下拉过滤器。我设法做到这一点的唯一方法就是名字。

filter :product_varietal_name,
  as: :select,
  label: 'Varietal name',
  collection: Varietal.names_for_select

但我希望能够按varietal_id搜索,因为我在该列上有索引,它应该快得多。但是,我似乎无法这样做。

filter :product_varietal       # undefined method `product_varietal_eq'
filter :product_varietal_id    # undefined method `product_varietal_eq'
filter :product_varietal_id_eq # undefined method `product_varietal_id_eq_eq'
filter :product_varietal_eq    # undefined method `product_varietal_eq_eq'

在过滤器名称末尾的_id周围显然有一些魔力。而这种魔力并没有达到我的目的。

工作的唯一情况是关联在正在查看的模型上。因此Sale属于Productfilter :product正如您所期望的那样工作。

那么如何在sale.product.varietal_id上搜索选择框过滤器?

0 个答案:

没有答案