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 :

Roles utilisateurs Symfony


Sujet :

Symfony PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    495
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2004
    Messages : 495
    Par défaut Roles utilisateurs Symfony
    Bonjour,

    Je met en place un site avec une authentification et je voudrais pouvoir gérer les rôles en DB. Dans la doc symfony, je trouve juste ce genre la :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
        public function getRoles()
        {
            return array('ROLE_USER');
        }
    Mon champ roles doit être de quel type ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
        /**
         * @ORM\Column(type="string")
         */
    	private $roles = [];
    J'ai trouvé des exemples avec type="json" ou type="json_array". J'ai essayé les deux, mais Doctrine me sort des erreurs quand j'essaye de faire la migration :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    Migration 20180125090717 failed during Execution. Error An exception occurred while executing 'CREATE TABLE person (id INT AUTO_INCREMENT NOT NULL, civilite VARCHAR(200) NOT NULL, prenom VARCHAR(200) NOT NULL, nom VARCHAR(200) NOT NULL, username VARCHAR(200) NOT NULL, mail VARCHAR(200) NOT NULL, roles JSON NOT NULL, password VARCHAR(200) NOT NULL, is_active TINYINT(1) NOT NULL, UNIQUE INDEX UNIQ_34DCD1765126AC48 (mail), PRIMARY KEY(id)) DEFAULT CHARACTER SET utf8 COLLATE utf8_unicode_ci ENGINE = InnoDB':
     
    SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near 'JSON NOT NULL, password VARCHAR(200) NOT NULL, is_active TINYINT(1) NOT NULL, UN' at line 1
    quelqu'un aurait un exemple qui fonctionne, avec la fonction getRoles ?

    Et donc Symfony 4.03, PHP 7.2, MariaDB

    Merci !

  2. #2
    Membre éclairé
    Profil pro
    Inscrit en
    Janvier 2004
    Messages
    495
    Détails du profil
    Informations personnelles :
    Âge : 53
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Janvier 2004
    Messages : 495
    Par défaut
    bon au final j'ai fait ca

    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
    16
    17
    18
    19
     
        /**
         * @ORM\Column(type="string", length=200)
         */
        private $role;
        public function getRole()
        {
            return $this->role;
        }
     
        public function setRole($role = null)
        {
            $this->role = $role;
        }
     
        public function getRoles()
        {
            return [$this->getRole()];
        }

  3. #3
    Membre émérite
    Homme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2013
    Messages
    739
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Novembre 2013
    Messages : 739
    Par défaut
    bonjour,
    c'est vrai c'est résolu mais c'est mieux de le garder en array car les rôles sont une listes indiquée dans le fichier Security pour la gestion des permissions.
    autrement si j'ai le rôle RÔLE_ADMIN , comment tu va indiquer qu'il a en total RÔLE_USER + RÔLE_ADMIN ???

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 3
    Dernier message: 28/02/2014, 13h03
  2. gestion des roles utilisateur
    Par EAKOM dans le forum Seam
    Réponses: 2
    Dernier message: 28/03/2009, 12h39
  3. [JBoss Portal] Tester role utilisateur
    Par natoine dans le forum Portails
    Réponses: 1
    Dernier message: 22/10/2008, 23h01
  4. [Débutant] Jointure Role/Utilisateur
    Par issou dans le forum Langage SQL
    Réponses: 6
    Dernier message: 02/12/2006, 14h15
  5. Repartition de roles utilisateurs en Java
    Par Zorgz dans le forum Interfaces Graphiques en Java
    Réponses: 4
    Dernier message: 06/10/2006, 13h55

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