2010-11-11 6 views
4

J'utilise Symfony 1.4 et ORM comme Propel dans mon projet. J'ai configuré le Settings.yml pour sécuriser ma page. Mais puis-je faire une connexion/déconnexion personnalisée par mon action prolongeant toutes les fonctionnalités des plugins SfGuard.i trouvé un article dans SymfonyLab, mais n'était pas assez clair.Comment créer une connexion personnalisée pour l'utilisateur sfGuard dans Symfony?

+0

Pouvez-vous définir une connexion/déconnexion personnalisée plus précisément - voulez-vous dire comme dans un modèle personnalisé pour la page de connexion, ou quelque chose de différent? – richsage

+0

C'est comme un modèle personnalisé pour la page de connexion. Au lieu de la connexion par défaut de Symfonys, vous voulez créer une page de connexion personnalisée. –

+0

Voulez-vous modifier la vue, effectuer différentes actions de connexion/déconnexion ou effectuer des actions de connexion/déconnexion supplémentaires? Selon la combinaison de ces 3 (ou autres) choses affecte la réponse. –

Répondre

9

manière la plus simple de passer outre la vue de sfGuard signin:

1) Créez un répertoire appelé 'sfGuardAuth' dans votre module frontend:

mkdir apps/frontend/modules/sfGuardAuth 
mkdir apps/frontend/modules/sfGuardAuth/templates 

2) Copiez les modèles par défaut à partir du dossier sfGuardPlugin à le nouveau module

cp plugins/sfGuardPlugin/modules/sfGuardAuth/templates/* apps/frontend/modules/sfGuardAuth/templates 

3) Modifier les nouveaux fichiers à votre contenu de coeurs

4) Effacer le cache

./symfony cc 
+0

merci, je vais essayer et vous faire savoir .. –

+0

savez-vous comment le customiser du backend ?? comme si je fais un formulaire symfony normal et que je le soumets à mon action, le contrôleur devrait vérifier les informations de connexion et créer une session. –

+1

ne serait-ce pas réinventer l'action de connexion? Vous pouvez facilement outrepasser les actions en étendant sfGuardAuthActions dans vos propres modules/sfGuardAuth/actions/actions.class.php - jetez un oeil au dossier BasesfGuardAuthActions.class.php dans plugins/sfGuardPlugin/modules/sfGuardAuth/lib pour voir lequel actions à remplacer. – cvaldemar

2

Vous pouvez également afficher le formulaire de connexion où vous voulez. J'ai une page pour les utilisateurs de s'inscrire ou de se connecter, alors j'ai fait quelque chose comme:

$ this-> signin = new sfGuardFormSignin();

puis dans la vue, vous pouvez faire ce que vous voulez.

Questions connexes