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 :

[CraueFormFlowBundle] [2.x]


Sujet :

Symfony PHP

  1. #1
    Nouveau Candidat au Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2012
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2012
    Messages : 2
    Points : 1
    Points
    1
    Par défaut [CraueFormFlowBundle]
    Bonjour,
    je suis entrain de faire mon propre site mais j'ai tomber dans un problem :s
    je voulais réaliser un formulaire dinscription en plusieurs étapes, j'ai utilisé le bundle CraueFormFlowBundle,
    mais je rencontre un problème rien ne s'affiche sur ma page (je pense que le problème vient du services.yml) :/

    voila le code que j'ai utilisé

    service.yml

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    Projet.form.registerUser:
              class: Projet\AnnoncesBundle\Form\Type\RegisterUserFlow
              tags:
                -  { name: form.type, alias: registerUser }
        Projet.form.flow.registerUser:
              class: Projet\AnnoncesBundle\Form\Type\RegisterUserFormType
        parent: craue.form.flow
              scope: request
              calls:
                - [ setFormType, [ @Projet.form.registerUser ] ]

    RegisterUserFlow.php
    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
    20
    21
     
    <?php
    // Projet/AnnoncesBundle/Form/Type/RegisterUserFlow.php
    namespace Projet\AnnoncesBundle\Form\Type;
    use Craue\FormFlowBundle\Form\FormFlow;
     
    class RegisterUserFlow extends FormFlow {
     
     
        protected $maxSteps = 3;
     
    		protected function loadStepDescriptions() {
    			return array(
    				'Account',
    				'Password',
    				'Terms of service',
    			);
    		}
     
     
    }



    RegisterUserFormType.php
    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
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
     
    <?php
    // Projet/AnnoncesBundle/Form/Type/RegisterUserFormType.php
    namespace Projet\AnnoncesBundle\Form\Type;
    use Symfony\Component\Form\AbstractType;
    use Symfony\Component\Form\FormBuilder;
     
    class RegisterUserFormType extends AbstractType {
     
        public function buildForm(FormBuilder $builder, array $options) {
              switch ($options['flowStep']) {
                case 1:
                    $builder->add('titre');
                    break;
                case 2:
                    $builder->add('description');
                    break;
                case 3:
                    $builder->add('adresse');
                    break;
            }
        }
     
        public function getDefaultOptions(array $options) {
            $options = parent::getDefaultOptions($options);
     
            $options['flowStep'] = 1;
            $options['data_class'] = 'Projet\AnnoncesBundle\Entity\Annonce'; // should point to your user entity
     
            return $options;
        }
     
        public function getName() {
            return 'registerUser';
        }
     
    }

    Action ds controller
    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
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
     
    <?php
    // Depot Accueil
    public function indexAction()
    {
     
     
       $user = new Annonce(); // should be your user entity
       $flow = $this->get('Projet.form.flow.registerUser'); // must match the flow's service id
     
    	echo "<pre>";
    	print_r($flow);
    	echo "</pre>";
     
     
        $flow->bind($user);
     
        $form = $flow->createForm($user);
        if ($flow->isValid($form)) {
            $flow->saveCurrentStepData();
     
            if ($flow->nextStep()) {
                // render form for next step
                return array(
                    'form' => $flow->createForm($user)->createView(),
                    'flow' => $flow,
                );
            }
     
            // flow finished
            $em = $this->getDoctrine()->getEntityManager();
            $em->persist($user);
            $em->flush();
     
            return $this->redirect($this->generateUrl('home')); // redirect when done
        }
     
        return array(
            'form' => $form->createView(),
            'flow' => $flow,
        );
     
     
     
    }


    je suis vraiment prssé
    merci davance

  2. #2
    Membre régulier
    Homme Profil pro
    Développeur PHP5/Symfony2
    Inscrit en
    Août 2012
    Messages
    89
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur PHP5/Symfony2

    Informations forums :
    Inscription : Août 2012
    Messages : 89
    Points : 96
    Points
    96

  3. #3
    Nouveau Candidat au Club
    Homme Profil pro
    Développeur Web
    Inscrit en
    Décembre 2012
    Messages
    2
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Communication - Médias

    Informations forums :
    Inscription : Décembre 2012
    Messages : 2
    Points : 1
    Points
    1
    Par défaut
    Merci bcp pour votre reponse , je vais voir votre lien

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

Discussions similaires

  1. [2.x] CraueFormFlowBundle : comment l'utiliser
    Par MarronSuisse dans le forum Symfony
    Réponses: 4
    Dernier message: 12/03/2012, 05h26

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