私は、コントローラのモデル関係の代わりにORMを使ってデータにアクセスするプロジェクトに取り組んでいます(例:hasManyなどを使って適切なモデル関係を確立する代わりに、leftJoinsを使用して、それを通して)Laravel:モデル関係とORM
私の質問は、実際にパフォーマンスと関係がある。モデル関係を使用して、leftJoinsを使用するよりも速くデータにアクセスしますか?私はLaravelが実際にフードの下でleftJoinを実行するかどうかはわかりません。
私はタイトなスケジュールに従っていますので、実際にモデルリレーションシップを使用するコードをリファクタリングする価値があるかどうか、パフォーマンスが向上するかどうかを判断したいと思いますか?
ありがとうございます。
特に、あなたが時間を押されている場合は、私たちがあなたにこのような質問に答えることは本当に難しいです。 Laravel(少なくとも)は結合を使用しないことがあります。しかし、私は1つの簡単なテストケースを構築し、セットアップで実行することをお勧めします。 –
shoieb0101の答えによると、Laravelの関係は結合を実行しません。関連する(子)コンポーネントを取得するために追加のクエリを実行します。場合によっては、関係が意味を成し、時には結合が意味をなさない場合もあります。関係が良いのは、結合されたデータが素早く配列できるためです。結合では、別のテーブルのデータをクエリの結果に追加するだけです。 – devk