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

Plugins PHP Discussion :

Besoin d'information sur sfDoctrineGuardPlugin


Sujet :

Plugins PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 12
    Par défaut Besoin d'information sur sfDoctrineGuardPlugin
    Bonsouère

    Voilà, je veux faire un [petit] projet avec le framework Symfony, dans le but d'apprendre à le manier convenablement et me faire un peu la main.

    J'en suis donc au tout début (aucun module généré ni rien, j'ai créé un hote virtuel local), au moment de la création de la database.
    J'envisage de créer un espace membre (ou du moins un truc qui y ressemble).

    J'ai donc créé avec mes petites mains le fichier schema.yml, décrivant différentes tables dont la table "Membre".

    Ma question se porte en fait en partie là-dessus.

    Je compte donc avoir une table "Membre" pour contenir les données des membres ; mais je compte aussi gérer les droits et les authentifications des membres via le plugin sfDoctrineGuardPlugin.
    Or d'après le tutoriel Jobeet, sfDoctrineGuardPlugin fournit des classes de modèles pour sauvegarder utilisateurs, groupes et permissions en base de donnée.

    Jusque là ça ne me pose pas de problème, seulement je ne souhaite pas avoir des informations sur les membres stockées en 2 tables différentes.

    Est-ce que quelqu'un peut m'expliquer concrètement comment cela procède-t-il ?
    Y'a t-il des précautions à prendre lors de la création de la table ou bien ce cas a été convenablement anticipé et est géré par le plugin ?

    Merci pour votre aide

  2. #2
    Membre éprouvé Avatar de Vicrabb
    Femme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2010
    Messages
    66
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 42
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Novembre 2010
    Messages : 66
    Par défaut
    La table qui concerne les membres permet d'enregistrer email/nom/prénom/pseudo pour ce qui est informations personnelles. Si tu as besoin d'ajouter d'autres informations, alors tu auras besoin soit d'un plugin plus étendu (ou un autre complémentaire) soit de ta propre table membre.

    En d'autres termes, le plugin ne gère pas l'ajout ou la modification des données personnelles style âge, localisation, etc..

    Par contre, si tu veux un simple espace membres sans avoir besoin d'autres données qu'un email et un pseudo (nom et prénom étant facultatifs), joue avec le plugin.

  3. #3
    Expert confirmé
    Avatar de Michel Rotta
    Homme Profil pro
    DPO
    Inscrit en
    Septembre 2005
    Messages
    4 954
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 62
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : DPO
    Secteur : Distribution

    Informations forums :
    Inscription : Septembre 2005
    Messages : 4 954
    Par défaut
    Si tu recherches dans le forum tu vas trouver plusieurs sujet qui parlent d'étendre la table user de sfGuard à l'aide de l'héritage de table. Ces informations sont aussi données dans le readme du plugin.

  4. #4
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 12
    Par défaut
    Merci pour vos réponses rapides
    J'ai finalement opté pour la solution de M. Rotta (avec un héritage par aggrégation)

    J'ai à présent une autre question [bête] qui m'empêche de dormir me soucie un peu ; et je suis sûr que vous aurez instantanément la réponse.
    Je veux concevoir un module membre, mais je ne sais pas dans quelle application le mettre.

    Il me semble relativement logique de mettre ce module dans l'application frontend ; puisque c'est par là que vont s'effectuer la plupart des interactions entre membres et interface.
    Mais d'un autre côté je souhaite faire en sorte d'avoir des membres capables de poster des "fiches" via un formulaire si et seulement s'ils sont connectés.

    Donc j'en viens à mon application backend. Doit elle aussi servir d'application gérant aussi les membres ou pas ?
    Ça me parait relativement curieux dans le sens où l'administration en backend peut être totalement générée (et donc pas de module membre à construire) et accomplir des actions normalement inaccessibles aux membres.

    J'avoue que je suis un peu perdu quant à la répartition des tâches de chaque application.

    Par ailleurs, pourriez-vous me confirmer que l'application frontend accueille bien l'inscription des membres (via le module Membre) ? (c'est juste pour être sûr que je pars pas déjà dans la mauvaise direction )

    Si vous pouviez m'éclaircir sur ce(s) point(s), ça serait vraiment top
    Merci d'avance!

  5. #5
    Membre éprouvé Avatar de Vicrabb
    Femme Profil pro
    Développeur Web
    Inscrit en
    Novembre 2010
    Messages
    66
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 42
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Novembre 2010
    Messages : 66
    Par défaut
    Tu sais, tu peux mettre la gestion des utilisateurs où tu veux, ce n'est pas nécessaire de le faire en frontend ou en backend (mais c'est conseillé du côté backend). Par ailleurs, le backend est inacessible aux membres dans la mesure où toi, tu le décides. Tu peux faire communiquer les deux et gérer les accès avec les credentials (les droits). Michel a écrit une page sur son blog à ce sujet, il pourra mieux te renseigner que moi.

    Par exemple, dans mon projet 'je-teste-un-peu-de-tout-dans-symfony', tout le monde se connecte via le frontend mais seuls les admins auront un bouton administration vers le backend, tout cela grâce aux credentials. Note que j'ai été jusqu'à mettre des droits différents au sein du backend même.

  6. #6
    Membre habitué
    Profil pro
    Inscrit en
    Décembre 2010
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2010
    Messages : 12
    Par défaut
    Merci pour ta réponse rapide, j'apprécie

    Donc en gros, tu me conseillerais de faire un module membre dans le frontend, permettant dont l'une des actions permettrait l'authentification des membres. (je récapitule ce que j'ai compris )

    Un module membre serait également présent dans le backend, mais pour me permettre de les administrer ; c'est bien ça ?

    bon sinon je m'en vais zieuter le blog de michel

Discussions similaires

  1. Réponses: 9
    Dernier message: 25/08/2011, 10h22
  2. Besoin d'information sur VPN
    Par DevCR dans le forum Hardware
    Réponses: 4
    Dernier message: 14/02/2007, 15h14
  3. Besoin d'informations sur AVIFile
    Par Jim_Nastiq dans le forum Bibliothèques
    Réponses: 6
    Dernier message: 30/01/2007, 09h27
  4. Besoin d'information sur les téléafficheurs
    Par vallica dans le forum Windows
    Réponses: 5
    Dernier message: 16/08/2006, 15h22
  5. besoin d'information sur le Streaming
    Par Dnx dans le forum Windows
    Réponses: 1
    Dernier message: 28/10/2005, 15h04

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