douhuifen9942 2017-03-24 05:51
浏览 650
已采纳

Laravel Eloquent - 包含snake_case和camelCase列混合的现有数据库

I have a large existing database that I would like to access with Laravel/Eloquent.

  • I'm using Laravel 5.2,
  • I have generated models using the "user11001/eloquent-model-generator" package
  • I have generated autocompletion using the command php artisan ide-helper:models

However my database contains a mix of snake_case and camelCase columns, and whenever I try to access the camelCase column "seoAlias", with code like the following:

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

I get the following error:

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

Does anyone have a solution for accessing a database with a mix of snake_case and camelCase columns using Laravel?

Thanks,

  • 写回答

3条回答 默认 最新

  • dougu5950 2017-03-25 14:05
    关注

    You could use the following if your column name is seoAlias:

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

    This way you will be able to access the database with eloquent without having to rename the columns.

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?