Php WhereHas()/orWhereHas未按预期约束查询
我正在使用新的Php WhereHas()/orWhereHas未按预期约束查询,php,laravel,laravel-4,Php,Laravel,Laravel 4,我正在使用新的whereHas方法在Laravel4.1中添加一个对急切加载关系的约束 $broadcast = $broadcast->whereHas('season', function ($query) use ($parameterValues) { $query->where('name', '2011-12'); }); 在本例中,我正在搜索一个足球/足球广播,其中的关系是广播属于a季节 我想为团队(俱乐部)添加一个约束条件,其中关系是广播
whereHas
方法在Laravel4.1中添加一个对急切加载关系的约束
$broadcast = $broadcast->whereHas('season', function ($query) use ($parameterValues) {
$query->where('name', '2011-12');
});
在本例中,我正在搜索一个足球/足球广播,其中的关系是广播
属于
a季节
我想为团队(俱乐部)添加一个约束条件,其中关系是广播
家庭俱乐部
和广播
hasOne
或where has
-
但这似乎抵消了我在第一个例子中提到的对本赛季的限制。这就像,通过链接
或where has
,我的where
方法“忘记”了它们所约束的内容。我错误地使用了该方法。我首先加载了这两个关联,然后链接了whereHas
和或whereHas
$broadcast->with('homeClub');
$broadcast->with('awayClub');
$broadcast->whereHas('homeClub', function($query) use ($parameterValues) {
$query->where('abb', 'liverpool');
})->orWhereHas('awayClub', function($query) use ($parameterValues) {
$query->where('abb', 'liverpool');
});
$broadcast->with('homeClub');
$broadcast->with('awayClub');
$broadcast->whereHas('homeClub', function($query) use ($parameterValues) {
$query->where('abb', 'liverpool');
})->orWhereHas('awayClub', function($query) use ($parameterValues) {
$query->where('abb', 'liverpool');
});