我想知道让一个实体与另一个实体具有1:N关系但又取决于参数的最佳方法是什么。

例如,我有product entity和product_description实体,它取决于product_id以及language(2个字符代码)。另一个示例是manufacturermanufacturer_descriptioncategorycategory_description。有很多-您有主意。

我虽然要扩展EntityRepository类并添加基于注释的自动连接。我只是不确定这是否是执行我想要的“正确方法”。您能提出更好的解决方案吗?另一个虽然只是在getDescription($language)实体中具有方法product,但是对我来说,它并不是最佳解决方案,尤其是因为我想在90%的情况下将所有其他信息加载与语言相关的内容。在单独的查询中获取该内容只会造成不必要的负载。

谢谢您的建议。

最佳答案

有一个可翻译的学说扩展。我从未使用过它,但看起来它可以解决您的用例:

http://www.doctrine-project.org/2010/11/18/doctrine2-behavioral-extensions.html

也可以看看

https://github.com/l3pp4rd/DoctrineExtensions

10-04 22:30