我需要来自我的Doctrine存储库的一组预定义的结果。我使用findBy方法并像下面这样传递数组:
$this->myReposirtory->findBy(['value1', 'value2', 'value3']);
现在的问题是,Doctrine自动命令id返回的结果。我需要的是数组输入的确切顺序。
发布于 2016-11-23 08:19:31
findBy方法是这样的:
/**
* Finds entities by a set of criteria.
*
* @param array $criteria
* @param array|null $orderBy
* @param int|null $limit
* @param int|null $offset
*
* @return array The objects.
*/
public function findBy(array $criteria, array $orderBy = null, $limit = null, $offset = null)
{
$persister = $this->_em->getUnitOfWork()->getEntityPersister($this->_entityName);
return $persister->loadAll($criteria, $orderBy, $limit, $offset);
}所以,第二个论点是赞成的。
示例查询可以是:
$this->myReposirtory->findBy([...], ['someValue' => 'ASC']);或者,如果需要更多的自定义,可以在存储库中编写自定义方法。更多信息:http://docs.doctrine-project.org/projects/doctrine-orm/en/latest/reference/query-builder.html#working-with-querybuilder
https://stackoverflow.com/questions/40758913
复制相似问题