gpt4 book ai didi

symfony - Doctrine - 对多个(多对多)关系使用同一个表

转载 作者:行者123 更新时间:2023-12-01 03:54:02 25 4
gpt4 key购买 nike

假设我有三个实体:页面、产品和媒体。

好吧,我想要这样的现实:

Page <-(many-to-many)-> Media

Product <-(many-to-many)-> Media

使用常见的方法来解决这个问题,会得到两个看起来非常相似的表。

我的问题是:我可以使用 Doctrine 为两个关系使用一个表吗?

我只需要一种建议新列的方法,该列将指示特定行上的媒体对应物是产品还是页面。

最佳答案

答案是否定的。关系表 N:N 必须有唯一的表名。
但是......你可以创建一个这样的结构:

Page <--1:N--> MyGreatJoinTable <--N:1--> Media
Product <--1:N--> MyGreatJoinTable <--N:1--> Media

您不需要描述引用,因为它指的是不同的表,但如果您愿意,您可以这样做。

当然 MyGreatJoinTable 至少会有三列:
- PageId
- ProductId
- MediaId

关于symfony - Doctrine - 对多个(多对多)关系使用同一个表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18905152/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com