定义模型名称时,laravel会将你的模型名自动转化为复数,比如你的模型名称为user,则对应的表名会转化为users,如果不想要这样,可以在基类中重写getTable方法来达到你想要的效果
这是模型原有的处理方式:
public function getTable()
{
return $this->table ?? Str::snake(Str::pluralStudly(class_basename($this)));
}
我们可以定义一个BaseModel,继承Model,然后重写一下getTable方法:
public function getTable()
{
return $this->table ?? Str::snake(class_basename($this));
}
重写前:用户订单表user_orders会转换成user_order
重写后:用户订单表user_orders会转换成user_orders