首页 > php框架 > YII > 正文

yii2 hasone 报错怎么办

藏色散人
发布: 2020-07-20 10:46:57
原创
1979 人浏览过

yii2 hasone报错的解决办法:首先根据documentation打开相应的文件;然后修改语句为“function getUser(){return $this->hasOne(User::className...)}”即可。

yii2 hasone 报错怎么办

yii2 hasOne关系工作错误

具体问题:

我有2个表:用户和收藏者:

users table
favorite
登录后复制

现在,我在“收藏夹”模型中建立了如下所示的关系

public function getUser()
{
    return $this->hasOne(User::className(), ['id', 'user_favorited']);
}
登录后复制

在控制器中,我找到了用户收藏夹的列表

public function actionGetList()
{
    $favorite = Favorite::find()->where([
              'user_favoriting' => Yii::$app->user->id
          ])->all();
    foreach ($favorite as $key => $item) {
        # code...
        echo "<pre class="brush:php;toolbar:false">"; var_dump($item->user); echo "<br/>"; die(&#39;123&#39;);
    }
    return $favorite;
}
登录后复制

但是当我请求此操作时,我得到一个错误

Column not found: 1054 Unknown column &#39;0&#39; in &#39;where clause&#39;\nThe SQL being executed was: SELECT * FROM `users` WHERE (`0`, `1`) IN ((12, 80))",
登录后复制

请帮我!

推荐:《yii教程

解决方法:

根据documentation,您必须使用:

public function getUser()
{
    return $this->hasOne(User::className(), [&#39;id&#39; => &#39;user_favorited&#39;]);
}
登录后复制

以上是yii2 hasone 报错怎么办的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!