1
我有一個多對多的私人聯盟用戶關係,連接表爲league_user
。但是,當我使用$user->privateLeagues
時,它只返回第一個關係。Yii2多對多不歸還所有關係
這裏是我的關係定義:
public function getLeagueUsers()
{
return $this->hasMany(LeagueUser::className(), ['user_id' => 'id']);
}
public function getPrivateLeagues()
{
return $this->hasMany(PrivateLeague::className(), ['id' => 'league_id'])
->via('leagueUsers');
}
實施例表中的數據:
league_user
user_id league_id
1 1
1 2
private_leagues
id name
1 first
2 second
尋找你的數據樣本,你只有一個匹配的行..(league_id = 1 - > id = 1) – scaisEdge
聯盟id 2 - > id 2怎麼樣? –
類中的表名是否正確?它應該工作。它與[docs](http://www.yiiframework.com/doc-2.0/yii-db-activerelationtrait.html#via()-detail)中的代碼相同... $ model-> leagueUsers是否返回2個對象? – robsch