SonataAdminBundle champ de formulaire de requête
Dans SonataAdminBundle dans l'Admin de classe I ne peut pas faire un orderBy sur ManyToMany champ.
Par exemple l'Auteur et le Livre. L'auteur peut avoir de nombreux livres, ainsi que le Livre peut avoir plusieurs Auteurs. Dans le lien ci-dessus, il est écrit que je peux utiliser une requête pour un champ de formulaire. J'ai donc pu préparer une requête qui serait de sélectionner les auteurs et les irder par leur nom. Comment gérer cela? Comment obtenir de l'EntityManager dans le but d'y créer une requête et le passer à travers option de requête?
protected function configureFormFields(FormMapper $formMapper)
{
$formMapper
->add('name','text')
->add('author', 'sonata_type_model', array('query' => ....), array('edit' => 'inline'))
;
}
Vous devez vous connecter pour publier un commentaire.
OK, je l'ai eu à travailler:
attr
. Où est la documentation disponible formMapper options de champ ?Rien changé à ce sujet ? je suis une "classe n'existe pas (erreur 500)" par l'utilisation de ce.
Remarque : il est revenu travailler dans Symfony 2.1, mais pas plus dans Symfony 2.2.
$query_user = $this->modelManager->getEntityManager('Application\Sonata\UserBundle\Entity\User')->createQueryBuilder() ->add('select', 'u') ->add('from', 'Application\Sonata\UserBundle\Entity\User u') ->add('orderBy', 'u.username ASC'); $formMapper ->add('title',null,array('required' => true)) ->add('user', null, array('required' => true, 'query_builder' => $query_user)) ;