1

Doctrine ODM 有注解(collection)来指定应该使用哪个名称进行收集。它默认为类名,但可以轻松更改。

但是我已经映射了由其他类扩展的超类。继承类型是单个集合,该集合以基抽象类命名。如何更改此名称?

假设我有类 Base,它得到了扩展。但我希望将集合命名为 Items。我显然不想更改所有扩展类中的注释,因为它非常多余并且容易出错。

4

1 回答 1

1

文档中所述

映射的超类不能是文档并且不可查询。

因此它不能映射到任何集合。您需要有一个类,@Document其中@InheritanceType指定了进一步的文档将从中扩展的注释(该类可以是abstract)。您可以将它放在映射的超类之间,也可以直接使用它。还要感谢有一个@Document映射类,您将能够在返回具体类的同时查询它。

于 2017-02-26T17:13:35.250 回答