在Eloquent中,默认情况下,与模型关联的表名称将是模型类名的复数形式。这会导致一些明显的问题,例如“鼠标”,“盒子”,“鹿”等名称。我无法找到Eloquent是否可以处理复数复数的任何方式。
解决此问题的一种简单方法是覆盖默认表名。我知道对于每个模型,您可以使用protected $table = "mice";
更改关联表的名称,但我想知道是否可以通过DEFAULT完成,以完全匹配类名,因此您不必将该行添加到每个模型中。
除了,如果有人碰巧知道Eloquent是否可以处理复数复数,我一直在想。
答案 0 :(得分:1)
您可以扩展Eloquent以创建自己的基本模型,并使用您自己的逻辑覆盖getTable()
方法。
利用Laravel的Illuminate\Support\Pluralizer
课程,你应该能够得到你喜欢的东西。 :)