我希望在我的实体类中运行自定义查询。我不想为这个查询使用表映射我只想返回一个结果数组,但我希望查询仍然记录到记录器。我已经剥离了课程并重命名以试图说明我想要实现的目标
// src/Name/ExampleBundle/Entity/ExampleEntity.php
namespace Name\ExampleBundle\Entity;
class ExampleEntity
{
public function getArrayFromExample(){
$results = $this->getEntityManager()
->createQuery("SELECT * FROM exmapleTable LIMIT 50")
->getResult();
return $results;
}
}
以上返回类似
的内容Fatal error: Call to undefined method {path}\ExampleEntity::getEntityManager()
答案 0 :(得分:0)
您的查询应位于实体存储库中,而不是实体本身。 http://mackstar.com/blog/2010/10/04/using-repositories-doctrine-2
然后你可以这样做:
public function getArrayFromExample(){
$results = $this->_em
->createQuery("SELECT * FROM exmapleTable LIMIT 50")
->getResult();
return $results;
}