约定表名称(带下划线)

时间:2013-01-22 00:58:17

标签: php orm laravel eloquent

Laravel 3/4中此表的正确表名是什么?

结构
    image_projects(id,project_id,image,ext,size,created_at,updated_at,active)

image_projects
imageprojects
imageProjects

而且,我如何创建模型?

app/models/image_projects.php
app/models/imageprojects.php
app/models/imageProjects.php
app/models/image/projects.php
app/models/projects/image.php

2 个答案:

答案 0 :(得分:45)

只要您将文件命名为&单数形式的类,类名以大写字母开头。

您可以使用以下任何选项:

表名: image_projects

文件名: ImageProject.php

班级名称: ImageProject


表名: imageprojects

文件名: Imageproject.php

班级名称: Imageproject


表名: imageProjects

文件名: ImageProject.php

班级名称: ImageProject

在这种情况下,您必须自己设置$table属性。


请记住:如果您没有以表格的名称单独命名您的课程,则必须在模型中手动设置它:

class ImageProjects extends Eloquent
{
    public $table = 'image_projects';
}

答案 1 :(得分:1)

当前的Laravel版本4.2表名称约定以这种方式正常运行:

表名: image_projects

文件名: ImageProject.php

班级名称: ImageProject

camel-case类名称强迫我使用表名下划线。