f.association 使用 WHERE 子句收集 Rails

f.association with WHERE clause for collection in Rails

在我的表单中,我有一个 f.association 字段:

<%= f.association :groups, as: :check_boxes %>

现在,我得到了一个复选框列表,其中包含我数据库中的所有组。我只想显示一些使用 where 过滤器的组。

<%= f.association :groups,  Group.where(type: 'products'), as: :check_boxes %>

但这不起作用。

我该怎么做?

Formtastic 应该允许您使用 :collection 键定义集合。

<%= f.association :groups, as: :check_boxes, collection: Group.where(type: 'products') %>

可以在他们的代码库中找到更多示例 here