Bonjour,

J'ai pas mal de problème en ce moment pour mettre en place un formulaire tout simple et j'ai donc 3 questions dont je ne trouve pas de réponse sur la doc.

Le formulaire est basé sur un objet et créé avec formbuilder.

1) Je souhaite ajouter une * (ou une icone) à côté d'un champ obligatoire (oui ça parait tout bête :p) : problème, comment savoir qu'un champ est obligatoire ou non ? A part le form_label et form_widget, je ne sais pas comment savoirsi le paramètre required est placé à true/false dans mon formbuilder
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
 
--Controller
$form = $this->createFormBuilder($user)
                ->add('email', EmailType::class, array('required' => false))
                ->add('save', SubmitType::class)
                ->getForm();
 
--Vue Twig
<div class="form-group">
    {{ form_label(form.email, "Email") }} [ici je veux afficher *]
    {{ form_widget(form.email, {'attr': {'class': 'form-control'}}) }}
</div>
2) Les erreurs ne s'affichent pas. Mon form->isValid retourne false (un champ vide dans le formulaire avec une annotation NotBlank sur l'ORM, donc l'erreur est logique), mais form_errors(form) ou form_errors(form.email) n'affiche rien. Pourtant la barre "profile" affiche bien une erreur dans le formulaire mais lorsque je clique dessus j'ai ce message d'erreur
Code : Sélectionner tout - Visualiser dans une fenêtre à part
Neither the property "id" nor one of the methods "id()", "getid()"/"isid()"/"hasid()" or "__call()" exist and have public access in class "Symfony\Component\VarDumper\Cloner\Data".
PS : Même en utilisant {{ form(form) }} qui génère un formulaire complet tout seul, les erreurs ne s'affichent pas.

3) Comment peut-on faire des formulaires complexes ? Le côté "j'ai un utilisateur avec 5 variables donc mon formulaire à 5 champs" ça marche en cas d'école, sur une vrai appli métier, ça n'existe pas ou très peu. Du coup, peut-on utiliser le formbuilder pour afficher et récupérer facilement des information spécifiques qu'on va pouvoir ensuite retravailler et enregistrer en fonction du code de notre appli ?

Merci d'avance pour vos réponses