例: 特定の投稿の詳細ページ
詳細ページには多くの関連付けがありますコメント テーブル
コメント テーブル
には 1 つの関連付けがありますユーザー テーブル
ユーザー テーブル
関連付けが 1 つありますユーザー データ テーブル
その後、コメント リストについては、 with('author') 関連付けを通じて user テーブル
をクエリすることができ、N 1 クエリを回避できます
しかし、現時点では、ユーザー テーブル
関連付けクエリユーザー データ テーブル
を通じて、まだ N 1 クエリです。
ユーザー テーブル
とユーザー データ テーブル
を一度に関連付けるにはどうすればよいですか?
コメント関連ユーザー: getAuthor
ユーザー関連ユーザーデータ: getAuthorname
は('author.authorname')で取得できます。
例を見たい場合は、このビデオの章で、マルチレイヤー関連付けからのデータの取得についてのみ説明します。
以前 ActiveRecord を使用していたときは、モデル ファイルをあちこち変更するのが面倒で、ネイティブ SQL を使用していました。パフォーマンスは良好です。LEFT JOIN 関連付けで十分です。findBySQL() を使用して確認してください。