ども、@kimihom です。 Rails アプリを作っていて「遅くなったな」と感じる場合、真っ先に原因となりうるのが N+1 なコードを書いてしまっていることだろう。その時の理想の対応は何か、考える機会があったのでブログとしてまとめておく。 モデル例 まずわかりやすいようにこういうクラスを作ったとしよう。 **Company** id name has_many :users, dependent: :delete_all | destroy | nullify **User** id name company_id belongs_to :contract 実際に使う時のサンプルコード c…