我正在尝试将 leftJoin 添加到 hasOne 方法中,但它似乎不起作用。来自主表的数据存在,但不来自连接表。代码:
public function getUser()
{
return $this->hasOne(UserKeys::classname(), ['id' => 'userKey_id'])
->leftJoin('users', 'users.id = userKeys.user_id');
}
最佳答案
你应该使用 viaTable 而不是 leftJoin
public function getUser(){
return $this->hasOne(UserKeys::classname(), ['id' => 'userKey_id'])
->viaTable('users', ['id'=>'user_id']);
}
关于Yii2 - hasOne 与 leftJoin,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35513503/