Php 如何使用Symfony和Doctrine订购数据?
我想构建datagrid过滤器,但addOrderByamdPhp 如何使用Symfony和Doctrine订购数据?,php,symfony,doctrine-orm,datagrid,Php,Symfony,Doctrine Orm,Datagrid,我想构建datagrid过滤器,但addOrderByamd->orderBy不适合我 $query ->andWhere('o.pizza = :pizza') ->setParameter('pizza', $pizzaId) ->addOrderBy(o.status,'ASC') 如果我这样做: $query ->andWhere('o.pizza = :spizza') ->setParameter('pizza'
->orderBy
不适合我
$query
->andWhere('o.pizza = :pizza')
->setParameter('pizza', $pizzaId)
->addOrderBy(o.status,'ASC')
如果我这样做:
$query
->andWhere('o.pizza = :spizza')
->setParameter('pizza', $pizzaId)
->andWhere('o.status = :status')
->setParameter('status',Pizza\PizzaApply::STATUS_READY)
它只显示状态为“就绪”的比萨饼。但我想先按状态“ready”排序,然后再按状态“On hold”排序。最近我遇到了一个类似的问题,并在我的管理类中使用了这个问题:(在我的情况下,我想要一个双订单) 作为替代方案,您也可以在Admin类中使用:
/**
* Default Datagrid values
*
* @var array
*/
protected $datagridValues = array(
'_page' => 1,
'_sort_order' => 'DESC',
'_sort_by' => 'dateUpdated'
);
这个代码是你真实代码的真实副本吗?如果orderby存在的问题是缺少引号..我在受保护的$datagridValues中被“\u sort\u by”覆盖。现在一切都好了。
/**
* Default Datagrid values
*
* @var array
*/
protected $datagridValues = array(
'_page' => 1,
'_sort_order' => 'DESC',
'_sort_by' => 'dateUpdated'
);