1
これは私のモデルでは、私の関係の方法である:Laravelイーガーローディング関係 - >ここで、()
のでpublic function relation()
{
return $this->belongsTo('App\Table', 'table_2_id', 'table_2_id')->where('table_1_id', $this->table_1_id);
}
、上記のモデルとTable2
の両方が同じ列を持っているが、多くの可能性があります2つのテーブルで共有されている2番目のカラムにフィルタリングしたいのですが、table_1_id
です。
コマンドラインでは完全に動作しているように見えますが、関係を読み込むのが空の場合は、
リレーションシップメソッドから追加の->where()
を削除すると、熱心な読み込みが機能します。
私は熱心ローディング午前方法は
->with('relation.nestedRelation');
を行うことである私も、まだ
->with(['relation' => function ($q) {
$q->with('nestedRelation');
}])
私はちょうどそれが助けかどうかを確認するために属性として追加しようとしましたが、試しました喜びはありません。
おかげで、私はその機能については知らなかった、私は私が「、不明な列のエラーを取得しますこれを行うには結合が必要だと仮定していますか? – martincarlin87
あなたはそれをしなければならないでしょうが、望んでいなければ、ちょうど私が作った編集を使うことができます:)そして、あなたが最初にあなたが望む行だけでなく関係全体をロードすることです。 –