現在、railsを使用してNaverまとめのようなユーザー投稿型サイトを作りたいと思っております。(ユーザーが投稿時にリンク、テキスト、画像等を選択して入力していき、表示時にはそれをまとまった記事のように表示する。)
現在postというモデルを作り、それにitemというモデルと1対Nの関係を構築し、さらにitemをリンク、画像、テキスト等のユーザーが選択して入力していく項目と1対1の関係を構築しています。(itemにorderというカラムをもたせ、何番目のitemかわかるようにしています。)
下記、モデルファイルです。
post.rb
has_many :items
item.rb
belongs_to :post has_one :image has_one :link has_one :heading has_one :text
link.rb, image.rb, text.rb, heading.rb
belongs_to :item
これをpostのidで取得し、子関係にある画像、リンク等のデータを並び順に表示したいと考えております。
そこで質問なのですが、こちらをviewファイルにて表示する際に、どのように取得すればN+1問題を回避した上で綺麗にviewにて表示できるのでしょうか?
どなたか、教えていただけませんでしょうか?
また、これよりも適切な書き方、参考記事等がございましたら教えていただけると幸いです。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。