我陷入了 Doctrine2 的一个非常简单的问题,我不知道如何使用我的 findByDate 方法从存储库中检索实体的最后一个条目。 我无法在 Doctrine 文档或谷歌中找到如何做到这一点......
您必须执行按日期排序的查询,并返回第一个:
class MyEntityRepository extends EntityRepository
{
function getLastEntity() {
return $this->createQueryBuilder('e')->
orderBy('e.date', 'DESC')->
setMaxResults(1)->
getQuery()->
getOneOrNullResult();
}
}
尝试:
$date = new \Datetime();
$em = $this->getDoctrine()->getManager();
$lastEntity = $em
->getRepository('MyBundle:Entity')
->findBy(array('date' => $date->format('Y-m-d')));
假设MySQL中该字段存储为
date
。
您可以使用
findBy()
方法并将第二个参数传递给您想要排序的内容。就你的情况说id
。 findBy([], ['id' => 'DESC'])
。
我希望它可以帮助其他面临同样问题的人。
简单条件教义查询