Bonjour,

J'ai créer une petite partie administration avec une entité items et une entité country.
C'est une relation OneToMany. J'arrive à trier les listes sans problèmes mais je ne trouve pas comment trier par ordre alphabétique le select2 "country" de la page de création d'un entité "Items"

Merci pour vos retours

1 réponse


olive140
Auteur
Réponse acceptée

J'ai trouvé la soultion, il faut créer un controller:

<?php

namespace App\Controller\EasyAdmin;

use Doctrine\ORM\EntityRepository;
use EasyCorp\Bundle\EasyAdminBundle\Controller\EasyAdminController;

class ItemsController extends EasyAdminController
{
    public function getCountryTypeQueryBuilder(EntityRepository $e)
    {
        return $e->createQueryBuilder('country')->orderBy('country.name', 'ASC');
    }
}
easy_admin:
    entities:
        # List the entity class name you want to manage
        Items:
            class: App\Entity\Items
            controller: App\Controller\EasyAdmin\ItemsController
            form:
                fields:
                    - {property: 'title'}
                    -
                        property: country
                        type_options:
                            query_builder: [App\Controller\EasyAdmin\ItemsController, getCountryTypeQueryBuilder]
        Country:
            class: App\Entity\Country
            form:
                fields:
                    - {property: 'name'}
                    - {property: 'code'}

En espérant que cela servira à quelqu'un