Cha*_*les 4 entity doctrine repository
是否有可能为同一个实体拥有两个存储库?
我尝试这样的东西,但它不起作用..
class PackageRepository extends EntityRepository
{
public function __construct($em, Mapping\ClassMetadata $class)
{
$cmf = $em->getMetadataFactory();
$class = $cmf->getMetadataFor('Product');
parent::__construct($em, $class);
}
}
Run Code Online (Sandbox Code Playgroud)
有任何想法吗 ?
首先,你为什么要这样做?
第二,回答你的问题.你可以拥有尽可能多的存储库来处理相同的实体,毕竟它们只是简单的类.
但是,您可以使用@Repository批注(或YAML或XML,无论如何)仅将一个类与实体类链接.所有映射数据都存储在EntityManager中.EntityManager只知道一个存储库类与实体类链接,如果你尝试使用$entity->getReposiotry()或类似它,它将只返回链接类.
但是没有什么可以阻止你创建自己的类来执行某些查询并直接显式地调用它们,而不依赖于EntityManagers存储库映射.
| 归档时间: |
|
| 查看次数: |
4925 次 |
| 最近记录: |