问题描述
表格
例如,我有4张桌子:
模型
// PlacedBet
public function odds()
{
return $this->belongsToMany(Odd::class,'placed_bets_has_odds');
}
// Odd
public function placedBets()
{
return $this->belongsToMany(PlacedBet::class,'placed_bets_has_odds');
}
// Result
public function placedBetsOdds()
{
return $this->hasMany(PlacedBetodd::class);
}
// PlacedBetodd
public function result()
{
return $this->belongsTo(Result::class);
}
问题
我想要所有placedBets,其中placed_bets_has_odds.result_id等于null。但是我不知道如何在我的PlacedBetRepository文件中使用Eloquent。
感谢您的帮助
解决方法
您可以使用whereDoesntHave来获取空关系。
PlaceBets::whereDoesntHave('results)->get();
但是正如@Naveed Ali暗示的那样,您需要在PlaceBets模型中放置结果关系;
public function results()
{
return $this->belongsToMany(Result::class,'placed_bets_has_odds');
}