类/单表继承还是其他方法?

时间:2018-10-17 12:22:46

标签: symfony doctrine-orm doctrine symfony4

将有一个“帐户”,该帐户可以是“客户”或“供应商”,或两者都可以。它必须至少是其中之一。

我想使用“类表继承”,但是不确定是否可以拥有既可以是客户又可以是供应商的帐户。

任何人都可以确认吗?

我将不胜感激。

1 个答案:

答案 0 :(得分:0)

我认为STI不是解决您问题的正确选择,因为它更像是多对多关系。

您的问题有点过于宽泛,无法给出确切的答案。根据您的需要,您可能有一些选择。

例如,如果Customer / Supplier意味着具有其他数据,则最好将它们设为与Account有关系的独立实体。因此,在您的应用中,您可以通过检查是否存在适当的相关实体来识别AccountCustomer还是Supplier。因此,您可以将其解释为

  

Account可以具有CustomerSupplier个人资料

这样的东西,而不是

  

Account可以是CustomerSupplier

其他解决方案是将其视为简单的ACL,其中Account是主题,CustomerSupplier是角色。

我们很难为您的问题提供更详细的答案。