|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Membre régulier
![]() |
Bonjour,
J'aimerais avoir sur mon site une zone dans laquelle je place mon login (form + information du compte). J'aimerai que cette zone apparaisse toujours, peut importe le module/action actif. J'avoue être un peu perdu quand au choix d'une méthode : Component ou Slot. Voilà, merci d'avance. |
|
00
|
|
|
#2 |
|
Membre habitué
![]() Baptiste NaudinatDéveloppeur Web Inscription : mai 2011 Messages : 70 ![]() |
Je crois qu'un :
Code :
<?php include_component('sfguardAuth', 'signin') ?> |
|
|
10
|
|
|
#3 |
|
Membre régulier
![]() |
Merci pour ta réponse ! Mais je n’utilise pas sfguard
|
|
00
|
|
|
#4 |
|
Membre habitué
![]() Baptiste NaudinatDéveloppeur Web Inscription : mai 2011 Messages : 70 ![]() |
Ah, original
Dans tous les cas, les slots sont faits pour définir un contenu variable, la plupart du temps dans un layout, comme un <title> la plupart du temps. Le choix se porte donc plutôt sur partial ou component. Vu que ton bloc contiendra un formulaire, il lui faut une action où instancier ce formulaire : il te faut donc un component |
|
|
10
|
|
|
#5 |
|
Membre régulier
![]() |
Bonjour,
Alors c'est justement la partie que je ne comprends plus Ensuite mon "action" du formulaire renvois vers mon "user/login". Hors celui-ci a besoin de l'objet Form créé dans mon composant afin de vérifier la validité du formulaire. Et c'est là que je ne comprends plus; je ne peux tout même pas passer mon objet Form en paramètre à mon action qui gère le login ! Je sens que je vais devoir passer à sfguard moi ... Merci ! |
|
00
|
|
|
#6 |
|
Membre habitué
![]() Baptiste NaudinatDéveloppeur Web Inscription : mai 2011 Messages : 70 ![]() |
Pas besoin de passer l'objet, il faut utiliser la méthode "bind" des formulaires.
Pour chaque formulaire géré par Symfony, le processus sera quasiment le même 1°) Instanciation du forumlaire : new MonFormulaire(); 2°) Bon bien sur affichage dans un template, le formulaire renvoie vers une action de validation 3°) Dans cette action, on instancie un nouveau formulaire, new MonFormulaire(), puis on lie ce nouveau formulaire aux données de la requête : $form->bind($request); 4°) On vérifie les données ( $form->isValid()), puis selon le résultat on sauvegarde (méthode save()) ou on redirige l'utilisateur. A noter, une fois passé par les méthodes bind() et isValid(), ton objet form contient les valeurs entrées par les utilisateurs ainsi que les erreurs éventuelles. Il est donc prêt a être ré-affiché pour correction par l'utilisateur. Pour trouver des exemples de code, le plus simple est de générer un module de crud (doctrine:generate-module ou doctrine:generate:admin) puis d'aller voir dans le cache les actions qui sont utilisées. |
|
|
10
|
|
|
#7 |
|
Membre régulier
![]() |
Ah oui mais oui ! Je suis bête ! J'ai lu cette théorie ...
Je vais tester ça... Par la même occasion je vais apprivoiser sfguard ! Merci pour les conseils.
|
|
00
|
Copyright © 2000-2012 - www.developpez.com