Laravel模式构建器将tablename转换为小写

时间:2015-06-04 23:44:12

标签: php laravel-5 naming-conventions

我只是想知道为什么laravel中的架构构建器会自动将所有camel case转换为表命名中的小写

E.g

Schema::create('myTable', function(Blueprint $table)
    {
        ....
    });

创建tablename:mytable

为什么?那是laravel的惯例吗?我没有在laravel docs Schema Builder页面中看到它。

由于

1 个答案:

答案 0 :(得分:3)

在表名和字段名中使用蛇案例也是一种常见做法,它不仅与laravel有关,而且大多数人都遵循这一惯例。在Laravel的旧(4x)文档中,已经提到过:

  

请注意,我们没有告诉Eloquent我们的用户使用哪个表   模型。 小写,该类的复数名称将用作   表名,除非明确指定了其他名称。所以,在这   例如,Eloquent将假设用户模型在用户中存储记录   表。您可以通过定义表属性来指定自定义表   你的模特:

class User extends Eloquent {

    protected $table = 'my_users';

}

所以,是的,Laravel在很多地方使用strtolower函数,可能最好遵循惯例约会,而{(1 {}})称为my_table。< / p>