我有三张桌子。 table2
table3
table1
。 table2
与一对多关系相关table2
。 table3
也与table1
有一对多关系。
我需要从这些表中获取一些$rece = \App\Table3::with('table2','table2.table1')
->get();
列的数据。
我尝试了以下代码。
$rece
我在table1
中获得了完整的json数组。但是我需要使用$rece = \App\Table3::with('table2','table2.table1')
->where('columnintable1', 'value')->get();
中的某个列值来过滤。我试过了
{{1}}
但它的投掷错误。
答案 0 :(得分:2)
试试这个:
\App\Table1::with(['table2', 'table2.table3' => function ($query) use ($variable) {$query->where('columnintable3', $variable);}])->get();
答案 1 :(得分:2)
试试这个
$rece = \App\Table1::with('table2','table2.table3')
->whereHas('table2.table3', function($query){
$query->where("columnname","value");
})->get();
答案 2 :(得分:2)
$rece = \App\Table1::with(['table2','table2.table3'=>function($query) {
->where('columnintable3', 'value');
}])->get();