使用Doctrine_Table
对象时,是否可以在使用findAll()
或findByWhatever()
时指定返回的集合的顺序?
在doc's我看到了getOrderByStatement()
和processOrderBy()
的一些内容,但目前尚不清楚如何使用它们......
答案 0 :(得分:58)
您也可以将第一个数组留空
$em->getRepository('BackendDestinyBundle:Destiny')->findBy(array(), array('title'=>'asc'));
答案 1 :(得分:13)
您实际上可以在架构中指定默认订单:
Foo:
columns:
...
options:
orderBy: bar DESC
请注意,如果要指定其他订单,仍可以创建查询并覆盖默认订单。
答案 2 :(得分:6)
根据Jon Wage的说法,您应该在此案例中创建一个查询...在mailing-list
中找到答案 3 :(得分:1)
在我的情况下,问题是我有这样的声明
$destinos = $em->getRepository('BackendDestinyBundle:Destiny')->findAll();
最后我把它改成了CreateQuery语句,它完全相同,但我可以把一个OrderBy句子
$destinos = $em->createQuery("SELECT d FROM BackendDestinyBundle:Destiny d order by d.name")->getResult();