0

記事が公開されているすべてのコメントを取得したい。したがって、どのスコープ定義が結果をもたらすでしょうか。記事内モデル

has_many :comments

コメントモデル

belongs_to :article
4

2 に答える 2

3

公開された値をブール値フィールドに保存している場合は、このようにコメント モデルでスコープを定義できます。

scope :having_published_articles, joins(:article).where("articles.published=?", true)

published を使用している列名に置き換えることができます。

次に、公開された記事を持つすべてのコメントを取得するには:

Comment.having_published_articles
于 2013-08-23T05:59:16.653 に答える
1

文字列なしですべての Ruby で実行する場合は、次のようになります。

scope :having_published_articles, joins(:article).where(articles: { state: 'published' })
于 2013-08-23T06:08:44.223 に答える