IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Symfony PHP Discussion :

FOSUserBundle Choix de role


Sujet :

Symfony PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2019
    Messages
    16
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Janvier 2019
    Messages : 16
    Par défaut FOSUserBundle Choix de role
    Bonjour,

    Je reviens vers vous pour la continuité de mon application web.

    J'utilise toujours Symfony et FOSUserBundle.

    Lorsqu'une personne s'inscrit sur le site, le compte n'est pas actif tant qu'il n'a pas été activé par un admin et que ce dernier lui à affecter un rôle.
    Son compte est donc en attente de validation.

    J'ai réussi grâce au isEnabled en true ou false, pour gérer l'activation ou désactivation du compte. Cependant je n'arrive pas à gérer l'affectation du rôle.

    Sur la page de l'admin (voir photo), s'affiche dans le tableau, les comptes à valider. Je souhaite que l'admin sélectionne dans une liste déroulante ROLE le role à affecter au compte et clique ensuite sur valider. Ceci passerai donc le setEnabled à true pour autoriser l'accès à son compte à la personne qui a fait la demande d'inscription.

    Je ne vois donc pas comment faire pour faire la liste déroulante ROLE, choisir le rôle à affecter et l'affecter en cliquant sur valider.

    Merci d'avance pour votre aide, et bonne journée
    Images attachées Images attachées  

  2. #2
    Membre averti
    Homme Profil pro
    Webmaster
    Inscrit en
    Août 2006
    Messages
    55
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Webmaster
    Secteur : Santé

    Informations forums :
    Inscription : Août 2006
    Messages : 55
    Par défaut
    Le plus simple c'est de faire un tableau avec les différents rôles mis à disposition (ils ne devraient pas changer tous les 4 matins) en paramètre d'un champ de type Choice (idéalement à choix multiple même si ce n'est pas ton exemple).

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    use Symfony\Component\Form\Extension\Core\Type\ChoiceType;
     
    [...]
     
    $choices = array(
        'Administrateur' => 'ROLE_ADMIN',
        'Utilisateur' => 'ROLE_USER',
    );
    $builder->add('role', ChoiceType::class, array(
        'choices' => $choices,
        'multiple' => false,
        'expanded' => false,
        'placeholder' => 'Droits d'accès',
        'mapped' => false,
    ));
    Et pour le sérialiser en base avec ton UserManager :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    [...]
     
    if ($this->form->isValid()) {
        $user = $this->form->getData();
        $role = $this->form->get('role')->getData();
        $user->setRole(array($role));
        $um = $this->container->get('fos_user.user_manager');
        $um->updateUser($user);
    }
    Je n'ai pas testé mon code, il y a peut-être des typo mais c'est l'esprit de ce que je ferais.

Discussions similaires

  1. [3.x] FOSUserBundle récupérer le role d'un user d'une ligne
    Par Paul75 dans le forum Symfony
    Réponses: 2
    Dernier message: 10/04/2017, 11h46
  2. [Symfony] FOSUserBundle et roles
    Par sinzen dans le forum Symfony
    Réponses: 2
    Dernier message: 04/02/2016, 14h46
  3. [2.x] [FosUserBundle] Définition des roles
    Par little-english dans le forum Symfony
    Réponses: 0
    Dernier message: 04/03/2013, 17h36
  4. [2.x] [Symfony 2] FOSUserBundle register role
    Par fredhouse dans le forum Symfony
    Réponses: 0
    Dernier message: 27/06/2012, 18h09
  5. Choix d'un ORB
    Par Anonymous dans le forum CORBA
    Réponses: 4
    Dernier message: 06/05/2002, 12h15

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo