Doctrine ODM - 为 MappedSuperclass 指定集合名称
Doctrine ODM - Specify collection name for MappedSuperclass
Doctrine ODM 有注解(集合)来指定集合应该使用哪个名称。它默认为 class 名称,但可以轻松更改。
不过我已经映射了 superclass,它由其他 classes 扩展。继承类型是单个集合,这个集合以基础抽象命名class。如何更改此名称?
假设我有 class 基地,它得到了扩展。但我希望将集合命名为 Items。我显然不想更改所有扩展 classes 中的注释,因为它非常多余并且容易出错。
中所述
A mapped superclass cannot be a document and is not queryable.
因此无法映射到任何集合。您需要有一个 class,其中指定了 @Document
和 @InheritanceType
注释,进一步的文档将从中扩展(class 可以是 abstract
)。您可以将它放在映射的 superclass 之间,也可以只使用它。还要感谢有一个 @Document
映射 class 你将能够查询它,同时有具体的 classes 返回。
Doctrine ODM 有注解(集合)来指定集合应该使用哪个名称。它默认为 class 名称,但可以轻松更改。
不过我已经映射了 superclass,它由其他 classes 扩展。继承类型是单个集合,这个集合以基础抽象命名class。如何更改此名称?
假设我有 class 基地,它得到了扩展。但我希望将集合命名为 Items。我显然不想更改所有扩展 classes 中的注释,因为它非常多余并且容易出错。
A mapped superclass cannot be a document and is not queryable.
因此无法映射到任何集合。您需要有一个 class,其中指定了 @Document
和 @InheritanceType
注释,进一步的文档将从中扩展(class 可以是 abstract
)。您可以将它放在映射的 superclass 之间,也可以只使用它。还要感谢有一个 @Document
映射 class 你将能够查询它,同时有具体的 classes 返回。