2
我正在使用新的whereHas方法在Laravel 4.1中的加載關係上添加約束。WhereHas()/ orWhere沒有按預期限制查詢
$broadcast = $broadcast->whereHas('season', function($query) use ($parameterValues){
$query->where('name', '2011-12');
});
}
在這個例子中,我在尋找一個足球/足球直播,其中的關係是廣播belongsTo
一個賽季
我想補充的球隊(俱樂部)的約束,其中的關係是那一個廣播hasOne
homeClub和一個廣播hasOne
客場。我想對於將球隊(利物浦),或者是在家中或離開俱樂部的結果,所以我嘗試使用orWhereHas
- a featured added in L4.1
$broadcast = $broadcast->with('homeClub')->whereHas('homeClub', function($query) use ($parameterValues){
$query->where('abb', $parameterValues['club_abbs']);
});
$broadcast = $broadcast->with('awayClub')->orWhereHas('awayClub', function($query) use ($parameterValues){
$query->where('abb', $parameterValues['club_abbs']);
});
但這似乎只是取消了對在提到本賽季的約束我第一個例子。就像通過鏈接orWhereHas,我的方法「忘記」了他們所約束的東西。
任何幫助,非常感謝 - 謝謝
喬恩。