Thinkphp5 模型里别名alias不生效bug【已解决】

使用很长一段时间的Thinkphp5.0,一直被一个问题困扰,就是模型里面数据查询无法使用别名,除非使用DB类

但是模型里面一般是直接使用

$this 或 静态方法 self

例如写一个 Join 查询

当前表取别名为t,查看当前Sql

可以看到别名没有起作用,经过我再三翻找源码,定位的位置是

\thinkphp\library\think\db\Query.php

 

尝试过,Db::name 与 self 都是这个分支

而 self 的表名是未转化的,转化一下就行,添加代码

        if (false !== strpos($table, '__')) {
            $table = $this->parseSqlTable($table);
        }

添加完成后截图

解决完成

工作日志随笔

window wamserver 安装 redis 拓展

2018-8-7 17:47:26

php工作日志

php cURL error 60 unable to get local issuer certificate

2018-8-25 16:50:11

0 条回复 A文章作者 M管理员
    暂无讨论,说说你的看法吧