我是YII2的新手,我的人际关系有问题:
我有用户和类别。他们有男/女关系。现在,我想查看用户拥有的类别。为此,我制作了一个名为“ user_category”的表,该表如下所示:
在我的模型中,我具有以下建议的代码 How do I work with many-to-many relations in Yii2:
public function getUsers(){
return $this->hasMany(TabUser::className(), ['intUserID' => 'intUserID'])
->viaTable('user_category', ['intCategoryID' => 'intCategoryID']);
}
public function getCategories(){
return $this->hasMany(TabCategory::className(), ['intCategoryID' => 'intCategoryID'])
->viaTable('user_category', ['intUserID' => 'intUserID']);
}
然后我将它们链接在一起:
if($user->validate()) {
$user->link('categories', $category);
}
var_dump($user->getCategories());
有人知道我做错了吗?
感谢您的时间和帮助!!
答案 0 :(得分:1)
尝试像这样划分表情,应该可以:
$categories = $user->categories;
var_dump($categories);
答案 1 :(得分:0)
方法getCategories()返回ActiveQuery对象而不是模型。如果需要获取类别模型的数组,则必须使用神奇的属性categories
。例如:
var_dump($user->categories);