-
问题描述
当使用 getRealColumn 时,报处出该错误 Undefined property: stdClass::$column_name when generating a model。
参考 https://github.com/laravel/framework/issues/20190
-
解决方法:
Laravel 的 MysqLProcessor
假定从 MysqL 中获得的 column_name
是小写的。
当执行 MySqlGrammar 的 compileColumnListing()
或者 compileColumnExisting() 方法时,实际执行了下面 sql 语句
select * from information_schema.tables where table_schema = ? and table_name = ?
返回结果包含了大写的 COLUMN_NAME 字段,造成了 Laravel 无法找到 column_name 而报错。因此修改该 sql 句获取小写字段即可:
select column_name as `column_name` from information_schema.tables where table_schema = ? and table_name = ?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。