Php 拉威尔+;MySQL-存储有说服力的名称空间

Php 拉威尔+;MySQL-存储有说服力的名称空间,php,mysql,laravel,Php,Mysql,Laravel,我得到了这个项目的工作,绝对没有文档或联系开发人员。我注意到,在数据库转储中,它们在两个表中存储了用于雄辩模型的PHP名称空间。例如,地址表有一个名为“object\u type”的字符串列,其值始终为“App\Entities\Client”。我在整个项目中搜索将使用此值的PHP代码。希望能让我了解它的用途。不让我惊讶的是,这个项目从来没有使用过这个值。我只是看到在插入数据库时硬编码这些值 我的问题是,这是某种数据库和/或ORM建模设计实践吗?如果是的话,你能解释一下如何在简单的实际意义上使用

我得到了这个项目的工作,绝对没有文档或联系开发人员。我注意到,在数据库转储中,它们在两个表中存储了用于雄辩模型的PHP名称空间。例如,地址表有一个名为“object\u type”的字符串列,其值始终为“App\Entities\Client”。我在整个项目中搜索将使用此值的PHP代码。希望能让我了解它的用途。不让我惊讶的是,这个项目从来没有使用过这个值。我只是看到在插入数据库时硬编码这些值

我的问题是,这是某种数据库和/或ORM建模设计实践吗?如果是的话,你能解释一下如何在简单的实际意义上使用它吗

也许这是开发人员的一些概念,但它从未进化过。这是一个有趣的想法,但是,通过MySQL在字符串条件上加入的想法听起来像是折磨。

听起来像是拉威尔:

自定义多态类型。
默认情况下,Laravel将使用完全限定的类名来存储相关模型的类型

是的,这是一种有效的建模技术,尽管纯粹主义者正确地认为这种技术滥用了标准形式。

听起来像拉威尔:

自定义多态类型。
默认情况下,Laravel将使用完全限定的类名来存储相关模型的类型


是的,这是一种有效的建模技术,尽管纯粹主义者正确地认为这种技术滥用了范式。

我不确定开发人员在想什么

但是想象一下,我们在一个论坛上,有一个帖子,每个帖子都有回复。我们可能想要一个收藏夹表,在那里我们可以保存回复和线程

一种方法是在Favorites表中有一个名为“object_type”的列(仅使用与您案例中相同的术语),然后当我们使用Elount将对象保存到数据库中时,我们可以使用:

$favourite->object_type = get_class($thread); //or get_class($reply) in case we want a reply
$favourite->save(); 
这样可以将该类的名称空间保存到数据库中。但当我们从数据库中得到它时,拉威尔会认出它


希望这次感冒能有所帮助。

我不知道开发者在想什么

但是想象一下,我们在一个论坛上,有一个帖子,每个帖子都有回复。我们可能想要一个收藏夹表,在那里我们可以保存回复和线程

一种方法是在Favorites表中有一个名为“object_type”的列(仅使用与您案例中相同的术语),然后当我们使用Elount将对象保存到数据库中时,我们可以使用:

$favourite->object_type = get_class($thread); //or get_class($reply) in case we want a reply
$favourite->save(); 
这样可以将该类的名称空间保存到数据库中。但当我们从数据库中得到它时,拉威尔会认出它

希望这次感冒能有所帮助