我是Doctrine2的新手,想知道如何告诉Doctrine我的实体使用哪个命名空间.我目前的配置是这样的.
我的所有实体都在命名空间"project\entity"中.所以,每当我想获得实体"颜色"时,我必须写:
$em->getRepository("project\\entity\\Color")
如何配置Doctrine始终使用命名空间"project\entity"?
您可以通过在配置对象上使用addEntityNamespace创建命名空间别名来接近您想要的内容:
$em->getConfiguration()->addEntityNamespace('NS1', 'Project\Entity'); $colorRepo = $em->getRepository('NS1:Color');
也适用于查询.
顺便说一下,"project\\entity\\Color"
也可以写成'project\entity\Color'
.我还建议将项目和实体资本化以符合标准.