Partage
  • Partager sur Facebook
  • Partager sur Twitter

[Symfony 4] Ajout d'un champ dans la classe User

FOSUserBundle

Sujet résolu
    12 février 2019 à 21:04:58

    Bonjour,

    J'ai ajouté un champ obligatoire dans la class User de mon projet qui utilise FOSUserBundle.

    Je souhaite ajouter ce champ à mon formulaire d'inscription, comment procéder, où mettre le fichier.
    J'ai trouvé des solutions pour Symfony3 mais rien pour Symfony4.

    Merci d'avance

    -
    Edité par Thibault.Martin34 15 février 2019 à 8:13:00

    • Partager sur Facebook
    • Partager sur Twitter
      15 février 2019 à 8:13:34

      Quelqu'un aurait une idée s'il vous plait ?
      • Partager sur Facebook
      • Partager sur Twitter
        15 février 2019 à 15:14:42

        Hello

        Tu peux rajouter le champs directement dans ton App\Form\UserType.php

        $builder->add('nouveauChamps');



        • Partager sur Facebook
        • Partager sur Twitter
          15 février 2019 à 16:12:00

          Peux tu me donner un UserType PHP que je voie un peu ou mettre ca ? S'il te plaît ?
          • Partager sur Facebook
          • Partager sur Twitter
            15 février 2019 à 16:17:45

            <?php
            
            namespace App\Form;
            
            use App\Entity\User;
            use App\Form\ApplicationType;
            use Symfony\Component\Form\AbstractType;
            use Symfony\Component\Form\FormBuilderInterface;
            use Symfony\Component\OptionsResolver\OptionsResolver;
            use Symfony\Component\Form\Extension\Core\Type\UrlType;
            use Symfony\Component\Form\Extension\Core\Type\TextType;
            use Symfony\Component\Form\Extension\Core\Type\EmailType;
            use Symfony\Component\Form\Extension\Core\Type\PasswordType;
            use Symfony\Component\Form\Extension\Core\Type\TextareaType;
            
            class UserType extends ApplicationType
            {
            
                public function buildForm(FormBuilderInterface $builder, array $options)
                {
                    $builder
                        ->add('firstName', TextType::class, $this->getConfiguration("Prénom", "Votre prénom..."))
                        ->add('lastName', TextType::class, $this->getConfiguration("Nom de famille", "Votre nom de famille..."))
                        ->add('picture', UrlType::class, $this->getConfiguration("Avatar", "Votre Avatar...", ['required' => false]))
                        ->add('email', EmailType::class, $this->getConfiguration("Email", "Votre adresse email..."))
                        ->add('hash', PasswordType::class, $this->getConfiguration("Mot de passe", "Votre Mot de passe..."))
                        ->add('passwordConfirm', PasswordType::class, $this->getConfiguration("Confirmation de mot de passe", "Votre Mot de passe..."))
                        ->add('introduction', TextType::class, $this->getConfiguration("Kicker", "Votre kicker..."))
                        ->add('description', TextareaType::class, $this->getConfiguration("Description", "Votre description..."))
            
                    ;
                }
            
                public function configureOptions(OptionsResolver $resolver)
                {
                    $resolver->setDefaults([
                        'data_class' => User::class,
                    ]);
                }
            }
            
            • Partager sur Facebook
            • Partager sur Twitter
              15 février 2019 à 16:29:19

              dans le formulaire il y'a juste un seul champ(nouveau champ) à ajouter et tous les champs de fosuser seront implicitement appelés par héritage.Tu trouveras les étapes nécessaires ici https://symfony.com/doc/current/bundles/FOSUserBundle/overriding_forms.html

              -
              Edité par armel.mc 15 février 2019 à 16:29:39

              • Partager sur Facebook
              • Partager sur Twitter
                15 février 2019 à 17:08:42

                Merci, ça fonctionne.

                Pourriez vous m'aider pour le sujet suivant :

                https://openclassrooms.com/forum/sujet/symfony-4-routage-fosuserbndle

                Merci encore

                -
                Edité par Thibault.Martin34 15 février 2019 à 21:49:32

                • Partager sur Facebook
                • Partager sur Twitter

                [Symfony 4] Ajout d'un champ dans la classe User

                × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
                • Editeur
                • Markdown