情景是這樣的,有三張表,Houses表、Estate表、HousesEstateRelation表。
Houses表和Estate表無直接關係,僅通過HousesEstateRelation表進行關聯。
這種三表關聯的,只需要定義好關係即可。
二話不說,直接貼代碼。
Houses模型
public function getRelations()
{
return $this->hasOne(HousesEstateRelation::className(), ['houses_id' => 'id']);
}
Estate模型
public function getEstate()
{
return $this->hasOne(Estate::className(), ['id' => 'estate_id']);
}
Houses視圖文件中調用。
[
'attribute' => 'relations.estate.name'
],
很多小夥伴2張表的時候知道怎麼關聯,3張表就懵了。。。在此貼出方法,希望有幫助吧。