1

私は1対多の関係でカテゴリモデルと投稿モデルを持っています。ActiveRecordで保護者のコレクションの子を取得

特定のカテゴリのすべての投稿を掲載したいと思います。

私は結果をActiveRecordオブジェクトにして、それ以上のクエリを実行できるようにします。

今私はそう

categories.map{|c| c.posts.order(position: :asc)} 
+0

質問は何であるあなたがそうでorderまたはwhereとを追加し続けることができるように、彼は、ARオブジェクトのですか? – Pholochtairze

+0

ActiveRecordで保護者のコレクションのすべての子を取得するにはどうすればよいですか? –

答えて

-1

まずあなたが興味を持っているすべてのカテゴリを見つけてIDを取得するよう.map使用しています:

category_ids = Category.where('name like ?', '%foo%').pluck(:id) 

は、それからちょうどcategory_id記事を照会しますこのIDリストに含まれています。

posts = Post.where(category_id: category_ids) 

T記事へ

posts.order(position: :asc) 
+0

投稿を忘れた場合 –

+1

注文部品が追加されました。ありがとう。 –

2

使用埋め込まれたクエリは、次のように:

Post.where(category_id: Category.all.pluck(:id)).order(position: :asc) 
関連する問題