1

我正在使用 Rails 2.3.10。我有名为 Stream、Buzz 和 BuzzDigest 的模型。有一个关联,buzz has_many :streams。还有另一个关联,buzz has_one :digest。有时,buzz.digest 为零。如何为 Stream 编写一个查询,以过滤掉流的摘要为 nil 的流?

这不是正确的语法,但可能接近我想要的:

Stream.find( :all, :conditions => "buzz_id.digest IS NOT NULL" )
4

1 回答 1

0

由于 BuzzDigest 是一个对象,而不是 DB 字段或 attr_accessor,因此您可能希望在您的应用程序设计中首先解决 Buzz.digest 可以为 nil 的事实。

如果您对此犹豫不决,那么快速思考会是这样的:


Stream.includes[:buzzes, :buzz_digests].group(:id)

假设正确的模式。 SO问题也可能有一些提示。

于 2012-09-08T14:34:15.143 回答