当我用蛋糕烘焙创建phps时遇到这个问题在cakephp中。我有以下问题: 如果我在库中保留两个元素,其中一个ID为1,其他ID为2.然后我在房间中保存了一个项目,其中包含了library_id = 1 ,并且在 library_id = 2 的房间。我真的可以将房间元素与用户元素联系起来。这应该不起,因为它们具有相同的library_id。因此它不引用相同的库。我只需要用户可以与房间相关,如果他们引用相同的库。我尝试cakephp抛出错误,或者不允许关系,当用户和房间没有相同的library_id时,我该怎么办?< / strong>
结果表:
libraries users rooms users_rooms
id id library_id id library_id user_id room_id
1 1 1 1 2 1 1
2
答案 0 :(得分:1)
我只需要用户可以与房间相关,如果他们引用相同的库。我怎么能这样做?
通常情况下,钻石形状的依赖关系,其中钻石的两个“边”必须从“底部”引导到相同的“根”,需要使用识别关系:
请注意library_id
如何从“根”向下迁移,在钻石的两个“边”下移动,然后在users_rooms
表的“底部”合并。这样,如果用户连接到房间,则它们都必须连接到同一个库。
不幸的是,我不熟悉CakePHP所以我不知道它是否支持这个。