7

使用简单的管理员,您可以对列表的一个字段进行排序。
Symfony - Easy Admin v2:对实体列表进行排序
但是有没有办法对我的列表中的多个字段进行排序?

4

1 回答 1

5

您可以将其覆盖createListQueryBuilder或如此createSearchQueryBuilder所述。

例子:

protected function createListQueryBuilder($entityClass, $sortDirection, $sortField = null, $dqlFilter = null)
{
    /* @var EntityManager */
    $em = $this->getDoctrine()->getManagerForClass($this->entity['class']);

    /* @var QueryBuilder */
    $queryBuilder = $em->createQueryBuilder()
        ->select('entity')
        ->from($this->entity['class'], 'entity')
        ;

    if (!empty($dqlFilter)) {
        $queryBuilder->andWhere($dqlFilter);
    }

    $queryBuilder->addOrderBy('entity.status', 'ASC');
    $queryBuilder->addOrderBy('entity.createdAt', 'DESC');

    return $queryBuilder;
}
于 2019-09-04T11:45:19.353 回答