Ruby on rails 范围界定f.collection\u select

Ruby on rails 范围界定f.collection\u select,ruby-on-rails,ruby-on-rails-4,rails-models,named-scopes,Ruby On Rails,Ruby On Rails 4,Rails Models,Named Scopes,我有一个模型,我正在使用一个集合选择,我想范围它只显示帐户是开放的。为了实现这一点,我在帐户模型中添加了一个布尔字段,默认值为false 以下是我在我的帐户模型中对此的尝试: def open_accounts self.where(account_closed: false) end 我试图在另一个模型的视图中使用该方法: <%= f.collection_select :account_id, current_user.accounts.open_accounts, :id,

我有一个模型,我正在使用一个集合选择,我想范围它只显示帐户是开放的。为了实现这一点,我在
帐户
模型中添加了一个布尔字段,默认值为
false

以下是我在我的帐户模型中对此的尝试:

def open_accounts
    self.where(account_closed: false)
end
我试图在另一个模型的视图中使用该方法:

<%= f.collection_select :account_id, current_user.accounts.open_accounts, :id, :registration %>

尽管尝试将方法添加到我的
用户
和我的
帐户
模型中,但我遇到了一个无方法错误


有什么想法吗

好吧,看来我问得太早了。请随意评论此解决方案的适当性:


在我的
账户
模型中添加了
范围:打开账户,->{where(账户关闭:[nil,false])}
。剩下的和上面一样。

好吧,看来我问得太早了。请随意评论此解决方案的适当性:


在我的
账户
模型中添加了
范围:打开账户,->{where(账户关闭:[nil,false])}
。其余部分与上面相同。

您的数据库架构中是否存在此布尔字段?您是否也迁移了数据库?它确实存在并且已经迁移。您的数据库架构中是否存在此布尔字段?您是否也迁移了您的数据库?它确实存在,并且已被迁移