Symfony2,2个类似用户,最好的方法

时间:2015-11-13 07:05:16

标签: symfony

我有这个项目,我有一个问题,有3个相关的enteties。

User:
   has_many: Leads

Bot:
   has_many: Leads

Lead:
   has_one: User/Bot

现在,用户和机器人共享很多相同的东西,但他们使用不同的防火墙,他们有许多不同的领域等,但我希望用户和机器人可以互换,以确定领导者属于谁,它可以属于机器人或用户,也可以同时属于两者。

在我运行统计数据等的其他许多网站中,我只参考一个字段,我不会检查是否有用户或机器人。

是否可以使这两个enteties共享相同的主键,然后以某种方式引用Lead字段中的单个实体?

或者Symfony中最好的设计方法是什么?

1 个答案:

答案 0 :(得分:1)

如果您在2个实体中拥有相同的所有字段,我建议您完全删除Bot实体。您只需要一个字段/usr/bin/qtcreator: line 2: 4379 Bus error (core dumped) QT_LOGGING_TO_CONSOLE=1 qtcreator-bin $@ ,其中包含可用值typebot。为了优化SQL查询,我建议您将此字段声明为ENUM类型。

此外,如果您确实需要不同的实体,可以使用Single table inheritance和上述的鉴别字段user