1 回答

TA貢獻1815條經驗 獲得超10個贊
您可以創建兩種不同的關系。
public function maleReproductions(){
return $this->hasMany(Reproduction::class, 'father_id');
}
public function feMaleReproductions(){
return $this->hasMany(Reproduction::class, 'mother_id');
}
現在基于$user你可以附加關系。
$productions = [];
$user = User::where('id',1)->first();
if($user->gender == 'm'){
$productions = $user->maleProductions;
} else {
$productions = $user->feMaleProductions;
}
對于用戶集合,附加兩者的關系。并根據條件訪問特定的內容。
$users = User::with('maleReproductions', 'femaleReproductions')->get();
foreach($users as $user){
if($user->gender == 'm'){
$productions = $user->maleProductions;
} else {
$productions = $user->feMaleProductions;
}
}
- 1 回答
- 0 關注
- 299 瀏覽
添加回答
舉報