首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >为什么即使模型名在Laravel上是复数的,它还是有效的?

为什么即使模型名在Laravel上是复数的,它还是有效的?
EN

Stack Overflow用户
提问于 2019-03-12 03:26:21
回答 1查看 270关注 0票数 0

我是新来的拉拉维尔。

当我学习Laravel的时候,我注意到我做的所有Model都是用复数命名的,但是它工作正常。

我想知道怎么会发生这种情况,因为我在注意到这一点之后才阅读文档,它说:“模型应该用单数来命名。”

有人能解释一下它的工作原理吗?

在那些模型中没有提到$table

我很抱歉我想说“单数”而不是“音节”。

EN

Stack Overflow用户

回答已采纳

发布于 2019-03-12 04:16:15

laravel的一般惯例是使用单数名称表示模型,用复数名称表示表。请注意,您可以通过在模型中使用protected $table = 'yourTableName';来更改关联的表名。我个人认为手动设置它是一个很好的实践。

我无法解释它如何得到相关的表格名称,因为它将是一篇文章(我也不确定我是否能够正确解释),但我可以把你送到正确的方向。

因为laravel是开源的,你实际上可以在引擎盖下达到顶峰,看看它是如何工作的。您可以转到framework/src/Illuminate/Database/Eloquent/Model.php在线来查看关联函数。您将看到getTable函数,它将返回表名。但它使用了另一种功能。所以你需要看看这个功能是什么。

经过几次挖掘,您将看到laravel实际上使用了一个不同的库来帮助获取项目名称。它使用感光器。你可以浏览一下它,了解它是如何得到复数名称的。在那里,您可以找到底层代码和规则等,以了解它是如何工作的。

票数 1
EN
查看全部 1 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/55113676

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档