Rails 5 /简单形式 - 过滤器关联

时间:2016-09-23 08:46:15

标签: ruby-on-rails simple-form ruby-on-rails-5

在我的表单中,我有一个关联,我希望可能的选择被简化为活动的关联对象的记录。根据简单形式的读物我使用:

<%= f.association :documenttype, collection: Documenttype.active.order(:name) %>

返回

  

未定义的方法&#39;活跃&#39; ...

我做错了什么

1 个答案:

答案 0 :(得分:1)

您需要在模型上设置范围。

class Documenttype < ActiveRecord::Base
  scope :active, -> { where(active: true) }

这假设您的表中有一个名为active的布尔列。如果你以其他方式确定它,你可以根据你的需要修改scope,例如,你可能有一个status字符串列必须有字符串“approved”,所以你要具有...

class Documenttype < ActiveRecord::Base
  scope :active, -> { where(status: 'approved') }