Activerecord 如何通过具有多个关系的特定值从相关模型中获取一条记录
我使用Yii2。有两个模型通过 有许多 方法,例如用户和用户属性:Activerecord 如何通过具有多个关系的特定值从相关模型中获取一条记录,activerecord,yii2,yii2-model,Activerecord,Yii2,Yii2 Model,我使用Yii2。有两个模型通过 有许多 方法,例如用户和用户属性: public function getUsersArticles() { return $this->hasMany(UsersArticles::className(), ['user_id' => 'id']); } 有没有办法通过id只获取一条相关记录?诸如此类: $User->usersArticles[$id]->someMethodFromUsersArticles(); $art
public function getUsersArticles()
{
return $this->hasMany(UsersArticles::className(), ['user_id' => 'id']);
}
有没有办法通过id只获取一条相关记录?诸如此类:
$User->usersArticles[$id]->someMethodFromUsersArticles();
$articles = $user->getUserArticles()->id($id)->one();
您可以扩展
ActiveQuery
并编写如下内容:
$User->usersArticles[$id]->someMethodFromUsersArticles();
$articles = $user->getUserArticles()->id($id)->one();
或者只是
$articles = $user->getUserArticles()->where(['id' => $id])->one();