【问题标题】:Laravel QueryException / SQLSTATE[42S02]Laravel 查询异常/SQLSTATE[42S02]
【发布时间】:2016-10-20 13:13:23
【问题描述】:

我是 Laravel 新手,遇到了一个错误。
当我尝试检查我的页面时,我收到此错误:

Connection.php 第 713 行中的 QueryException:SQLSTATE[42S02]:未找到基表或视图:1146 表 'db_tcc.colaboradors' 不存在(SQL: select * from colaboradors order by id_colaborador asc)

我的表名是“colaboradores”,我知道错误是“colaboradors”,但我不知道我的项目文件中的“colaboradors”在哪里。
我需要在代码中找到修复,但我不知道 laravel 中哪个文件负责 sql。

我的合作者模型:

<?php
    namespace App;
    use Illuminate\Database\Eloquent\Model;
    class Colaborador extends Model {
        protected $fillable = array('id_colaborador','nome','rg','orgao_expedidor','cpf','estado_civil','sexo','nome_pai','nome_mae','natura‌​lidade','data_nascimento','login','senha','siape','pis','rua','numero','bairro',‌​'cidade','estado','cep','telefone_fixo','telefone_celular','telefone_comercial','email');
    }

我的控制器:http://pastebin.com/QYgRBRrc

【问题讨论】:

  • 你有colaboradores的模型吗?
  • 模型中有没有像受保护的 $table = 'colaboradors'; ?
  • 不,我的模型没有。那是我的控制器。 pastebin.com/QYgRBRrc
  • 通常在模型中指定使用哪个表。

标签: php mysql sql laravel web


【解决方案1】:

“snake case”,类的复数名称将用作表格 除非明确指定另一个名称。

所以这是你的问题。

你有两个选择:

  • 重命名模型类或
  • 在您的模型中添加 $table = 'colaboradores';

【讨论】:

  • 谢谢兄弟!!!我在我的模型中添加了“受保护的 $table = 'colaboradores';”它有效!
  • 很高兴听到,请接受答案,以便其他寻找相同的人知道什么有效。
猜你喜欢
  • 2018-07-12
  • 2020-01-18
  • 2019-08-03
  • 1970-01-01
  • 1970-01-01
  • 2018-04-07
  • 2017-04-19
  • 1970-01-01
  • 2019-03-08
相关资源
最近更新 更多