$q = ModelOne::with('relation_one', 'relation_two')
->whereHas('relation_three', function ($q) {
$q->where('object', 'Obj1');
})
->whereHas('relation_four', function ($q) {
$q->where('object', 'Obj2');
})
->get();`
それは結構relation_one
とrelation_two
関係をロードし、私は、行ごとに別の関係をロードする必要があり、relation_three
又はrelation_four
のいずれかに応じてModelOne->object
の値。
私が午前問題はModelOne
がschema1
からのものであり、relation_three
& relation_four
で使用されるテーブルはschema2
からであるということです。
両方のモデルは、個別のprotected $connection
とprotected $table
変数で正しく設定されています。
私が受け取っているエラーは、サブクエリが間違ったスキーマをチェックしているので、relationship_three
またはrelationship_four
のテーブルが存在しないということです。
誰でもこれを修正する方法を提案できますか?ドキュメントを見たことがありますが、解決策を見つけることができませんでした。
をお知らせください。また、 'schema1'と' schema2'は何ですか?異なるデータベースですか? – t1gor
私は両方の読み込みを試み、私が必要とする結果を得ることができるかどうかを確認するために、両方の関係が同じIDを含む両方のテーブルのためにロードされている場合に問題が発生する可能性があります。 – JonnyFoley
はい、 'schema1'と' schema2'は異なるデータベースであり、既存のビジネスロジックのためにこのように残す必要があります。 – JonnyFoley