Doctrine orm Silex和条令-ORMException:未知实体名称空间别名[半固定]
我正在尝试使用我的应用程序中使用silex构建的条令组件。我能让它工作——几乎可以 我有我的“用户”实体和相应的存储库 当做Doctrine orm Silex和条令-ORMException:未知实体名称空间别名[半固定],doctrine-orm,doctrine,silex,Doctrine Orm,Doctrine,Silex,我正在尝试使用我的应用程序中使用silex构建的条令组件。我能让它工作——几乎可以 我有我的“用户”实体和相应的存储库 当做 $app['em']->getRepository('Foo\Entity\User')->findAll() 但是,在尝试进行自定义查询时,工作正常 $this->getEntityManager() ->createQuery( 'SELECT
$app['em']->getRepository('Foo\Entity\User')->findAll()
但是,在尝试进行自定义查询时,工作正常
$this->getEntityManager()
->createQuery(
'SELECT
u
FROM
Foo:User u
WHERE c.id = :x'
)
->setParameter('x',$in)
->getResult();
我得到这个例外
ORMException: Unknown Entity namespace alias 'Foo'
请忽略以下事实:我可以使用findById()
或findBy(array('id'=>$in))
进行选择自定义查询存在问题
$this->getEntityManager()
->createQuery(
'SELECT
u
FROM
Foo:User u
WHERE c.id = :x'
)
->setParameter('x',$in)
->getResult();
这是我的配置
$app['orm.em.options'] = array(
'mappings' => array(
array(
'type' => 'annotation',
'namespace' => 'Foo\Entity',
'alias' => 'core',
'path' => '%app.path%/src/Foo/Entity',
'use_simple_annotation_reader' => false,
)
));
及
经过一些研究,可能的解决方案如下:
- 自动映射:true=>已尝试,未成功
- 注册namespace=>trued,不确定是否正确,因此可能是解决方案,请建议如何正确操作
- 除此之外,我还尝试搜索具有类似“用法”的git回购,但没有找到:(
FROM
InstaLikes\Entity\User u
我假设您已经检查了映射选项中给定的别名
$app['orm.em.options'] = array(
'mappings' => array(
array(
'type' => 'annotation',
'namespace' => 'Foo\Entity',
'alias' => 'core',
'path' => '%app.path%/src/Foo/Entity',
'use_simple_annotation_reader' => false,
)
));
如果不将别名选项设置为Foo,创建自定义查询时,应使用完全命名空间,在这种情况下:
Foo\Entity\Userthx对于答案,是的,这就是我解决问题的方法,但是我希望使它更像Symfony(Foo:User),因为您的别名是core,您尝试过core:User吗?