php - Laravel Eloquent - 混合了 snake_case 和 camelCase 列的现有数据库

标签 php mysql laravel eloquent camelcasing

我有一个大型现有数据库,我想使用 Laravel/Eloquent 访问它。

  • 我正在使用 Laravel 5.2,
  • 我已经使用“user11001/eloquent-model-generator”包生成了模型
  • 我已经使用命令 php artisan ide-helper:models
  • 生成了自动完成功能

但是我的数据库包含 snake_case 和 camelCase 列的混合,每当我尝试访问 camelCase 列“seoAlias”时,代码如下:

$x = AdvertiserModel::whereSeoAlias('someValue')->get();

我收到以下错误:

SQLSTATE[42S22]: Column not found: 1054 Unknown column 'seo_alias' in 'where clause'

有没有人有使用 Laravel 访问包含 混合 snake_case 和 camelCase 列的数据库的解决方案?

谢谢,

最佳答案

如果您的列名称是 seoAlias,您可以使用以下内容:

$x = AdvertiserModel::where('seoAlias','=','someValue')->get();

这样您就可以在不重命名列的情况下以 Eloquent 方式访问数据库。

关于php - Laravel Eloquent - 混合了 snake_case 和 camelCase 列的现有数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42992319/

相关文章:

angularjs laravel 页面刷新出现 404 错误

php - 浏览器检测 PHP 中的代码未检测到 Opera

php - Shopware 阿拉伯语发票文本未连接

php - 安装 PHP PDO 的 zlib 目录

mysql - 使用 SELECT 更新并不使用 GROUP BY 进行分组

laravel - 多类别嵌套查询 Laravel 5

php - 找不到类 'HTML'(查看 : C:\xampp\htdocs\laravel_demo\resources\views\pages\registration. blade.php)

php - 如何通过 doctrine2 获取 "NOT LIKE"的结果

php - 将 mysql 数据库导入 phpmyadmin #1064

php - 应用程序流程 + 触发器。好吗?