当前位置:  开发笔记 > 数据库 > 正文

Symfony形成对属性进行排序的实体/文档

如何解决《Symfony形成对属性进行排序的实体/文档》经验,为你挑选了1个好方法。

我正在使用symfony表单为我的所有用户创建一个选择框.我按全名显示它们,但想按字母顺序排序.

$builder->add('transferTo', 'document', [
        'class' => 'UserBundle:User',
        'property' => 'fullname',
        'label'  => 'Overdragen aan',
        'attr' => ['class' => 'form-control selectpicker'],
        'label_attr' => ['class' => 'col-sm-2 control-label'],
        'multiple'  => false,
        'required' => true
    ]);

如何在firstName的全名上按字母顺序对用户进行排序?



1> Javad..:

你需要的是将queryBuilder添加到表单参数

use Doctrine\ORM\EntityRepository;

$builder->add('transferTo', 'document', [
    'class' => 'UserBundle:User',
    'query_builder' => function(EntityRepository $repository) { 
            return $repository->createQueryBuilder('u')->orderBy('u.fullname', 'ASC');
        }
    'property' => 'fullname',
    'label'  => 'Overdragen aan',
    'attr' => ['class' => 'form-control selectpicker'],
    'label_attr' => ['class' => 'col-sm-2 control-label'],
    'multiple'  => false,
    'required' => true
]);

我假设你的实体中的字段名是 u.fullname


使用ODM(MongoDB)使用Doctrine\ODM\MongoDB\DocumentRepository; 'query_builder'=> function(DocumentRepository $ repository){return $ repository-> createQueryBuilder('u') - > sort('u.firstName','desc'); },但仍然没有排序
推荐阅读
TXCWB_523
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有