例如我們現在有如下表:
使用者user表;
服務service表;
中間表user_service表;
其中,中間表的字段user_id和service_id一一對應,想要查詢每個使用者對應的服務,這裡使用到的是vaitable方法,代碼如下:
class xx
{
public function getService()
{
return $this->hasMany(Service::className(), ['id' => 'service_id'])
->viaTable('{{%user_service}}', ['user_id' => 'id']);
}
.....其他代碼
public function Search()
{
.....其他代碼
{
$query->andFilterWhere([
'{{%user_service}}.service_id' => $this->service]);
}
}
}
更多文章請到 http://skyline-traveler.com