Yii2 - hasOne 与 leftJoin

标签 yii yii2

我正在尝试将 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/

相关文章:

javascript - Yii2 为输入字段实现客户端唯一验证

mysql - Yii2 : Model returning NULL value (not set) when using Widget Detail VIew

menu - 如何在一个 Menu::widget 中添加多个 Yii2 submenuTemplate?

php - 替换默认的 jquery-ui.css 路径

phpunit 在 Yii2 中找不到应用类

php - Yii dataProvider 数组给出的数据顺序

yii2 - 事件菜单项的控制

Yii2 RBAC 规则反馈/留言

javascript - CHtml 链接为父级返回 null

mysql - 如何在 Yii 中添加日志记录?