我正在尝试Doctrine
从EntityManager
.
我可以按如下方式设置命名空间:
$em = EntityManager::create($connectionOptions, $config);
$sm = $em->getConnection()->getSchemaManager();
$driver = new \Doctrine\ORM\Mapping\Driver\DatabaseDriver($sm);
$driver->setNamespace('My\Entities');
$em->getConfiguration()->setMetadataDriverImpl($driver);
但是我无法检索它:
$em->getConfiguration()->getMetadataDriverImpl()->getNamespace();
PHP 致命错误:调用未定义的方法 Doctrine\ORM\Mapping\Driver\DatabaseDriver::getNamespace()
如果我搜索Doctrine/ORM/Mapping/Driver/DatabaseDriver.php
我可以看到setNamespace()
但看不到getNamespace()
,并且该namespace
属性是私有的:(
如何从 EntityManager 的实例中检索我的 Doctrine 实体的命名空间?