0

我在使用 Eloquent 的 Laravel 中遇到了一个错误,即:

SQLSTATE[42S02]: Base table or view not found: 1146 Table 
'task_manager.rel_developers_projects' doesn't exist (SQL: insert into 
`rel_developers_projects` (`project_id`, `developer_id`, `updated_at`, `created_at`) 
values (?, ?, ?, ?)) (Bindings: array ( 0 => '1', 1 => '1', 2 => '2013-07-31 08:23:35', 3 
=> '2013-07-31 08:23:35', ))

但是,模型称为 RelDevelopersProject,表称为 RelDevelopersProjects。

Eloquent 是否尝试将 CamelCased 名称转换为下划线?

4

2 回答 2

2

不要对表名使用驼峰式大小写。

但是,如果您需要,请尝试以下操作:

class RelDevelopersProject extends Eloquent {

    protected $table = 'RelDevelopersProjects';

}

请参阅Laravel 文档中的eloquent

于 2013-07-31T08:35:38.037 回答
0

是的,它确实。只需将表名定义为模型中的属性

/**
 * The database table used by the model.
 *
 * @var string
 */
protected $table = 'RelDevelopersProject';
于 2013-07-31T08:37:26.777 回答