はじめに 自分がRailsエンジニアとしてインターンをしており、その中で直近で一番意味わからんな。と思ったことがこれです。自分の学習のためにもしっかりとまとめました。他の記事よりなるべく初心者にもわかりやすくを意識して書きました。 色々な人がこれについて記事を書いているので下の参考文献も合わせて確認ください。 そもそもこれどういう時使うの? 親子関係のtableにおいて親のものを呼び出す時に子のデータも一緒に呼び起こしてcontrollerの記述をスッキリできるものや、主にeach do文を使った時に発生するN+1問題を解決するためのものである。 ここではN+1問題の詳細については触れないが、ActiveRecordによるSQLの発行回数がめちゃくちゃ多くなってしまってえげつないことになるからとりあえず対処しなければならないものという認識で良い(?)。 でもこんなに種類があって、どれがどう