Bonjour, voilà je souhaite ajouter différentes colonnes dans la table par défault de FosUserBundle, par éxample une colonne adresse, code postal etc...

je sais comment généré des entités via la console, generate:doctrine:entity mais je ne c'est pas comment les modifiers, j'ai chercher un peut dans la doc mais j'ai pas trouver grand chose.
Ps: je suis débutant avec symphonie 2

merci à tous :)

4 réponses


Salut,

je te conseillerais de te passer de fosuser. Tu fais une entité qui extends de userinterface, et tu pourras mettre tout ce que tu veux comme attributs, propriétés. C'est ce que j'ai fait, ça m'a permis d'avoir plusieurs entités qui peuvent se connecter (secrétariat, responsable et utilisateur).

Après peut-être que ça marche aussi avec fosuser hein. J'ai jamais testé.

Nans

Normalement si tu as suivi le tutoriel du site tu as du créer un bundle Utilisateur. Dans celui-ci tu dois avoir un dossier Entity qui est ton entité Utilisateur (ta table si tu préfère) et dedans il y'a un fichier Utilisateur.php qui contient les champs de ta table Utilisateur ainsi que les getters et setters.

Pour ajouter des champs c'est simple tu reprends la même syntaxe que les champs déjà présents dans le fichier, ça doit ressembler à ça :

/**
     * @var string
     *
     * @ORM\Column(name="nom_de_la_colonne", type="text")
     */
    private $nom_de_la_colonne;

Tu peux remplacer le "string" par ton type de champ et remplacer le nom de la colonne.

Une fois que tu as ajouté tes champs, tu peux mettre à jour tes getters et setters en faisant (si je me trompe pas) :

php app/console doctrine:generate:entities UtilisateurBundle

Et pour finir tu peux mettre à jour ta base de données :

php app/console doctrine:schema:update --force

Pardonne moi si j'ai fais quelques erreurs mais je débute aussi sous Symfony mais il me semble avoir compris cette partie ;)

Bonjour à tous :) merci pour votre aide, j'ai réussi XD
Alors maintenant j'ai créer un formulaire pour modifier sont e-Mail mais comment ça marche Symphony ? moi qui viens de cakephp j'ai énormément de mal à comprendre, j'ai regarder les tutos pour créer un site E-commerce sous symphony 2 mais j'arrive pas à reproduire ça pour une autres fonction.....sans rentré dabs les détails ont fait comment pour modifier une entrée dans une base de donnée depuis un controller par éxemple la colonne mail dans la table Utilisateurs ?
le code de mon controller:


$em = $this->getDoctrine()
                    ->getRepository('UtilisateursBundle:Utilisateurs')
                    ->findByid($user->getId());
                        $a = $form->getData();
                      $em->persist($a);

Merci par avance :)

Salut il va falloir que tu regardes les tutos parce que là ça part de trop loin si tu poses ce genre de question.

(Alexandre demode sur youtube, sur symfony 2 : ses tutos sont vraiment bien faits !)