Laravelのquerybuilderにeager loadingを使用することはできますか?
1が上見ることができるように、「eagerLoad」セクションとquerybuilderがあり$query->with('relation')
を呼び出す受け入れますが、次のエラーを生成します。Method addEagerConstraints does not exist.
私はこの問題に関するいくつかのドキュメントを見つけることを試みたが、のdidnました多く見つけることはできません。この場合、熱心な負荷を使用することは可能ですか?もしそうなら、どのように誰に話すことができますか?一部の人々はそれが可能であり、エラーが私のコードで別のエラーが原因で発生し指摘したように
更新
。ここではいくつかのサンプルは以下のとおりです。
// Querybuilder
$query->select([
'persons.id as alumni_id',
...
]);
$query->where('...'); // Based on search parameters
$query->groupBy('alumni_id');
$query->with('relation');
$result = collect($query->get());
// Model
public function relation()
{
// Note: relation does have a column person_id
return $this->hasMany(Relation::class, 'person_id', 'alumni_id')->get();
}
は、私の知る限り学んだよう
BadMethodCallException in Macroable.php line 81: Method addEagerConstraints does not exist.
表示関連のコードをしてください動作するはずです。 –
これは可能ですが、docs [Eager Loading](https://laravel.com/docs/5.2/eloquent-relationships#eager-loading)ドキュメントをご覧ください。取得しているエラーは他のものと関連していますので、関連するコードを表示してコンテキストを少し理解できるようにしてください。 – Desh901
@ Desh901:これを指摘していただきありがとうございます。見つけることができる文書がほとんどないためです。私はいくつかのコードサンプルを追加しましたが、何かが見つからないことを私に教えてください。 –