请教个 yii2 left join 问题

cjq003 2018-08-02 03:14:49


参考:https://www.yiichina.com/topic/6035
请不吝赐教!
...全文
548 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
cjq003 2018-08-03
  • 打赏
  • 举报
回复
错误代码:
<pre>An Error occurred while handling another error:
yii\base\InvalidRouteException: Unable to resolve the request: site/error in ..\vendor\yiisoft\yii2\base\Controller.php:128
Stack trace:
#0 ..\vendor\yiisoft\yii2\base\Module.php(528): yii\base\Controller->runAction('error', Array)
#1 ..\vendor\yiisoft\yii2\web\ErrorHandler.php(108): yii\base\Module->runAction('site/error')
#2 E:\Jesi\sly\hy\vendor\yiisoft\yii2\base\ErrorHandler.php(111): yii\web\ErrorHandler->renderException(Object(yii\web\NotFoundHttpException))
#3 [internal function]: yii\base\ErrorHandler->handleException(Object(yii\web\NotFoundHttpException))
#4 {main}
Previous exception:
yii\base\InvalidRouteException: Unable to resolve the request "money-water/index". in ..\vendor\yiisoft\yii2\base\Module.php:537
Stack trace:
#0 ..\vendor\yiisoft\yii2\web\Application.php(103): yii\base\Module->runAction('money-water/ind...', Array)
#1 ..\vendor\yiisoft\yii2\base\Application.php(386): yii\web\Application->handleRequest(Object(yii\web\Request))
#2 ..\backend\web\index.php(17): yii\base\Application->run()
#3 {main}

Next yii\web\NotFoundHttpException: Page not found. in E:\Jesi\sly\hy\vendor\yiisoft\yii2\web\Application.php:115
Stack trace:
#0 ..\vendor\yiisoft\yii2\base\Application.php(386): yii\web\Application->handleRequest(Object(yii\web\Request))
#1 ..\backend\web\index.php(17): yii\base\Application->run()
#2 {main}</pre>
司码君 2018-08-03
  • 打赏
  • 举报
回复
给你一个参考,我一般都是用joinWith的方式写的,希望能帮到你!

$query = self::find()
->select([
't.*',
User::tableName().'.username poster_name',
])
->from(self::tableName().' t')
->joinWith(['poster']);
cjq003 2018-08-02
  • 打赏
  • 举报
回复
yii\base\InvalidRouteException: Unable to resolve the request: site/error
这个错误似乎是因为我的环境的问题,我用的是phpstudy 2018,php 7.0 nginx redis 打开 php_exif , php_openssl 扩展。
去掉那个 left join 语句也是同样错误。本来去掉 left join 是没问题的,不知道环境哪里出问题了!
cjq003 2018-08-02
  • 打赏
  • 举报
回复
怎么办呢?
游北亮 2018-08-02
  • 打赏
  • 举报
回复
没用过这种sql写法,
我都是直接写原生sql,比如:
select * from aaa left join bbb on aaa.xxx=bbb.xxx
cjq003 2018-08-02
  • 打赏
  • 举报
回复
按这个帖子说的处理也没用:https://blog.csdn.net/webnoties/article/details/73501079
谁能帮我?谢谢!
cjq003 2018-08-02
  • 打赏
  • 举报
回复
改成:$waterModel = MoneyWater::find()->leftJoin('user', 'money_water.user_id = user.id')->select('user.username,money_water.*')->asArray()->all();
还是报同样错误:
yii\base\InvalidRouteException: Unable to resolve the request: site/error in ..\vendor\yiisoft\yii2\base\Controller.php:128
cjq003 2018-08-02
  • 打赏
  • 举报
回复

$waterModel = MoneyWater::find()->select('user.username,money_water.*')->join('LEFT JOIN','user','money_water.user_id = user.id')->asArray()->all();


加了后面的 ->select('user.username,money_water.*')->join('LEFT JOIN','user','money_water.user_id = user.id')->asArray()->all(); 程序就报错。报错如上一楼大图。

4,251

社区成员

发帖
与我相关
我的任务
社区描述
国内外优秀PHP框架讨论学习
社区管理员
  • Framework
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧