我只是想知道为什么laravel中的架构构建器会自动将所有camel case转换为表命名中的小写
E.g
Schema::create('myTable', function(Blueprint $table)
{
....
});
创建tablename:mytable
为什么?那是laravel的惯例吗?我没有在laravel docs Schema Builder页面中看到它。
由于
答案 0 :(得分:3)
在表名和字段名中使用蛇案例也是一种常见做法,它不仅与laravel有关,而且大多数人都遵循这一惯例。在Laravel
的旧(4x)文档中,已经提到过:
请注意,我们没有告诉Eloquent我们的用户使用哪个表 模型。 小写,该类的复数名称将用作 表名,除非明确指定了其他名称。所以,在这 例如,Eloquent将假设用户模型在用户中存储记录 表。您可以通过定义表属性来指定自定义表 你的模特:
class User extends Eloquent {
protected $table = 'my_users';
}
所以,是的,Laravel
在很多地方使用strtolower
函数,可能最好遵循惯例约会,而{(1 {}})称为my_table
。< / p>