下面由laravel框架教程栏目给大家介绍laravel指定表名的重要性,希望对需要的朋友有所帮助!
由于laravel在创建 model 的时候会自动关联对应的表名,具体遇到问题的流程如下:
在terminal中输入以下指令后会在 app 目录下创建一个customer.php 文件
php artisan make:model customer
但是这边默认需要在数据库中添加的表为 customers 而不是 customer,也就是说系统会自动根据 model 的名称加上复数“s”,这边一般情况是没有问题,但是如果遇到诸如 person 变 people 或者各种我们国人不能很简单辨别的形式,那么实惠对我们的开发造成问题;另外也有可能我们不想要系统自动匹配数据库,而要对表名进行自定义。
我们需要做的其实很简单,在创建的 model 文件函数中添加一条指定表名的规则:
<?phpnamespace app;use illuminate\database\eloquent\model;class customer extends model{ protected $table = 'customer';}
如上我们加入了 protected $table = 'customer';,强制把 customer.php 对应的数据库指定为 customer,而不是系统默认的 customers。这一点我们也可以在框架自带的user.php中看到,为了程序运行稳定和不出错,这一步应该在每一个model 中都应用。
遇到问题,简单记录...
以上就是终于知道laravel指定表名的重要性了的详细内容。