Rails よく忘れる集 / アソシエーションが深いN+1問題

Shunsuke Sawada

N + 1 問題。
サイトが遅くなる原因の1つですね。

それが何かはこちら参考に。
http://ruby-rails.hatenadiary.com/entry/20141108/1415418367

includes しとけばいいでしょーってなるけど、
あれ、User has_many :posts で Post has_one :image の時はどうすればいいのだろうか。

  

User は複数記事を持てる
Post は一枚メイン画像を持てる

  
みたいな場合は、こうする。

ruby
1
2
User = User.where( <お好きな条件> ).includes(stories: :image)

よく忘れるなー。

そんなかんじ。
Acts as taggable on のN+1問題をどーにかしたいなー。
  

Shunsuke Sawada

おすすめの記事

CakePHPのセレクトメニューでよく使う配列
5
Rails いつも忘れる集 / アソシエーションのあるモデルを含んだフォーム作成
2
Rails よく忘れる集 / バリデーションエラーでレイアウトが崩れるのを防ぐ
1