Rails根据其关联数激活记录查询表

时间:2017-07-21 17:42:09

标签: ruby-on-rails rails-activerecord

我有一个foo表,其中包含许多bar个。如何找到超过5 foo s的所有bar?我在考虑像Foo.where(bar.length > 5)这样的东西但是没有用。

2 个答案:

答案 0 :(得分:1)

检查

"as var 2from dual"

答案 1 :(得分:0)

您可以先使用counter_cache添加此代码并添加新列

class Bar < ActiveRecord::Base
  belongs_to :Foo, counter_cache: true
  # ...
end

# add a migration
add_column :Foo, :bars_count, :integer, default: 0

然后你可以执行

Foo.where(:bars_count > 5)

question可能相关