在CakePHP中,如何设置;一对—(三个中的一个)“;关系

在CakePHP中,如何设置;一对—(三个中的一个)“;关系,php,cakephp,cakephp-model,Php,Cakephp,Cakephp Model,我有三个disticnt模型,比如A、B和C。它们是不同的,不能真正合并成一个。它们有一个共同的元素,我制作了一个单独的模型D。在蛋糕中建立这种关系的最佳/最简单/标准方法是什么 目前,每个模型A、B、C都有一个与模型D相关的id“D_id”。尽管这会产生一些奇怪的东西,比如D被视为“父模型”,但情况并非如此,因为它是模型A-C之一。每个模型A、B和C都应该“属于”D D应该“有许多”A、B和C 这将使A、B和C都有一个“D_id”字段,该字段引用D中的一行 为了更好地解释CakePHP的关联,

我有三个disticnt模型,比如A、B和C。它们是不同的,不能真正合并成一个。它们有一个共同的元素,我制作了一个单独的模型D。在蛋糕中建立这种关系的最佳/最简单/标准方法是什么


目前,每个模型A、B、C都有一个与模型D相关的id“D_id”。尽管这会产生一些奇怪的东西,比如D被视为“父模型”,但情况并非如此,因为它是模型A-C之一。

每个模型A、B和C都应该“属于”D

D应该“有许多”A、B和C

这将使A、B和C都有一个“D_id”字段,该字段引用D中的一行


为了更好地解释CakePHP的关联,.

每个模型a、B和C都应该“属于”D

D应该“有许多”A、B和C

这将使A、B和C都有一个“D_id”字段,该字段引用D中的一行


为了更好地解释CakePHP的关联,我认为hasOne是访问D元素的最合适的关系。belongsTo是一个类似的关联,使D成为“父模型”,但hasOne似乎是逻辑选择。确切地说,我认为hasOne将是逻辑选择,问题是这会将键放在D模型中,因此不能仅凭此确定是否应该从模型a中选择id为X的记录,B或C。是否有一种方法可以创建模型+id的组合,以便模型D知道它,例如,可以从模型B中选择id X?如果您给我们每个模型的描述甚至名称,这会有所帮助。我想说,hasOne是访问D元素的最合适的关系。belongsTo是一个类似的关联,使D成为“父模型”,但hasOne似乎是逻辑选择。确切地说,我认为hasOne将是逻辑选择,问题是这会将键放在D模型中,因此不能仅凭此确定是否应该从模型a中选择id为X的记录,B或C.是否有一种方法可以创建模型+id的组合,以便模型D知道它,例如,可以从模型B中选择id X?如果您给我们每个模型的描述或名称,这会有所帮助。即使它没有“逻辑”意义,但这确实是正确的设置方法。了解模型所代表的数据会有所帮助。是的,关联的命名并不总是按照你认为的那样。即使它没有“逻辑”意义,但这确实是正确的设置方法。不过,了解模型所代表的数据会有所帮助。是的,关联的命名并不总是按照你认为的那样。