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 :

Champs du formulaire inexistant


Sujet :

Symfony PHP

  1. #1
    Membre éclairé
    Femme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2011
    Messages
    593
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Juin 2011
    Messages : 593
    Par défaut Champs du formulaire inexistant
    Bonjour à tous,
    J'ai le code suivant dans mon formulaire:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    public function configure()
    	{
    		$this->widgetSchema['id_adresse_fournisseur']->setOption('label', 'Fournisseur');
    	}
    mais j'ai l'erreur qui apparaît lorsque je vais à la page correspondante:
    Widget "id_commande_fournisseur" does not exist.
    Pourquoi? ai-je oublié quelque chose?

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    265
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 265
    Par défaut
    Ton widget créer une clé "id_adresse_fournisseur" et ton message d'erreur fait référence à "id_commande_fournisseur", le problème ne viendrait pas simplement de là ?

  3. #3
    Membre éclairé
    Femme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2011
    Messages
    593
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Juin 2011
    Messages : 593
    Par défaut
    J'avais pas remarqué
    Merci beaucoup!

  4. #4
    Membre éclairé
    Femme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2011
    Messages
    593
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Juin 2011
    Messages : 593
    Par défaut
    Après avoir bien regardé dans le code, je ne comprends pas pourqoui il me demande un champ que je n'ai pas défini?

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    265
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 265
    Par défaut
    Sans le code c'est difficile de voir, mais je suppose qu'il doit y avoir un echo ou une dépendance qui traîne quelque part.

  6. #6
    Membre éclairé
    Femme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2011
    Messages
    593
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Juin 2011
    Messages : 593
    Par défaut
    J'arrive vraiment pas à trouver, voilà le code:
    Pour le formulaire:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    public function configure()
    	{
    		$this->widgetSchema['id_adresse_fournisseur']->setOption('label', 'Fournisseur');
    	}
    Pour l'action:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    public function executeAfficherFormulaire(sfWebRequest $request)
    	{
        $this->form  = new AffichageParFournisseurForm();
        $this->facturefournisseur = new FactureFournisseur();
    	}
    Pour la template AfficherFormulaireSuccess
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    <?php include_partial('fact_fourn/form_affichageParFournisseur', array('facturefournisseur' => $facturefournisseur, 'form' => $form, 'configuration' => $configuration, 'helper' => $helper)) ?>
    La template _form_affichageParFournisseur.php:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
     
    	    <?php foreach ($configuration->getFormFields($form, $form->isNew() ? 'new' : 'edit') as $fieldset => $fields): ?>
    	      <?php include_partial('fact_fourn/form_fieldset2', array('facturefournisseur' => $facturefournisseur, 'form' => $form, 'fields' => $fields, 'fieldset' => $fieldset)) ?>
    	    <?php endforeach; ?>
    et enfin, la template form_fieldset2.php:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
     
    <?php foreach ($fields as $name => $field): ?>
    		<?php if (!((isset($form[$name]) && $form[$name]->isHidden()) || (!isset($form[$name]) && $field->isReal()) || (array_key_exists($name, $specialFields)))) : ?>
    			<?php include_partial('fact_fourn/form_field', array(
    			  'name'       => $name,
    			  'attributes' => $field->getConfig('attributes', array()),
    			  'label'      => $field->getConfig('label'),
    			  'help'       => $field->getConfig('help'),
    			  'form'       => $form,
    			  'field'      => $field,
    			  'class'      => 'sf_admin_form_row sf_admin_'.strtolower($field->getType()).' sf_admin_form_field_'.$name,
    			)) ?>

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    265
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 265
    Par défaut
    Désolé mais je ne vois pas, et je ne connais pas le fonctionnement interne de symfony donc j'ignore totalement d'où ça peut venir.

    Le message d'erreur n'est pas plus explicite que ça ? Ce n'est pas possible d'avoir un tracé complet de l'erreur pour en déterminer l'origine ?

  8. #8
    Membre éclairé
    Femme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2011
    Messages
    593
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Juin 2011
    Messages : 593
    Par défaut
    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
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
     
    500 | Internal Server Error | InvalidArgumentException
    Widget "id_commande_fournisseur" does not exist.
     
    {
          if (!$widget = $this->widgetSchema[$name])
          {
            throw new InvalidArgumentException(sprintf('Widget "%s" does not exist.', $name));
          }
          if ($this->isBound)
     
    at sfForm->offsetGet('id_commande_fournisseur')
    in SF_ROOT_DIR\apps\backend\modules\fact_fourn\templates\_form_field.php line 7 ...
    at require('C:\wamp\www\codex-ceslb-recette\public_html\apps\backend\modules\fact_fourn\templates\_form_field.php')
    in SF_ROOT_DIR\lib\vendor\symfony\lib\view\sfPHPView.class.php line 75 ...
    at sfPHPView->renderFile('C:\wamp\www\codex-ceslb-recette\public_html\apps\backend\modules/fact_fourn/templates/_form_field.php')
    in SF_ROOT_DIR\lib\vendor\symfony\lib\view\sfPartialView.class.php line 110 ...
    at sfPartialView->render()
    in SF_ROOT_DIR\lib\vendor\symfony\lib\helper\PartialHelper.php line 218 ...
    at get_partial('fact_fourn/form_field', array('name' => 'id_commande_fournisseur', 'attributes' => object('sfOutputEscaperArrayDecorator'), 'label' => 'Commandes Fournisseur', 'help' => null, 'form' => object('AffichageFactureParStatutForm'), 'field' => object('sfOutputEscaperObjectDecorator'), 'class' => 'sf_admin_form_row sf_admin_text sf_admin_form_field_id_commande_fournisseur'))
    in SF_ROOT_DIR\lib\vendor\symfony\lib\helper\PartialHelper.php line 180 ...
    at include_partial('fact_fourn/form_field', array('name' => 'id_commande_fournisseur', 'attributes' => object('sfOutputEscaperArrayDecorator'), 'label' => 'Commandes Fournisseur', 'help' => null, 'form' => object('AffichageFactureParStatutForm'), 'field' => object('sfOutputEscaperObjectDecorator'), 'class' => 'sf_admin_form_row sf_admin_text sf_admin_form_field_id_commande_fournisseur'))
    in SF_ROOT_DIR\apps\backend\modules\fact_fourn\templates\_form_fieldsetRecherche.php line 32 ...
    at require('C:\wamp\www\codex-ceslb-recette\public_html\apps\backend\modules\fact_fourn\templates\_form_fieldsetRecherche.php')
    in SF_ROOT_DIR\lib\vendor\symfony\lib\view\sfPHPView.class.php line 75 ...
    at sfPHPView->renderFile('C:\wamp\www\codex-ceslb-recette\public_html\apps\backend\modules/fact_fourn/templates/_form_fieldsetRecherche.php')
    in SF_ROOT_DIR\lib\vendor\symfony\lib\view\sfPartialView.class.php line 110 ...
    at sfPartialView->render()
    in SF_ROOT_DIR\lib\vendor\symfony\lib\helper\PartialHelper.php line 218 ...
    at get_partial('fact_fourn/form_fieldsetRecherche', array('facturefournisseur' => object('sfOutputEscaperIteratorDecorator'), 'form' => object('AffichageFactureParStatutForm'), 'fields' => object('sfOutputEscaperArrayDecorator'), 'fieldset' => 'NONE'))
    in SF_ROOT_DIR\lib\vendor\symfony\lib\helper\PartialHelper.php line 180 ...
    at include_partial('fact_fourn/form_fieldsetRecherche', array('facturefournisseur' => object('sfOutputEscaperIteratorDecorator'), 'form' => object('AffichageFactureParStatutForm'), 'fields' => object('sfOutputEscaperArrayDecorator'), 'fieldset' => 'NONE'))
    in SF_ROOT_DIR\apps\backend\modules\fact_fourn\templates\_form_parStatut.php line 39 ...
    at require('C:\wamp\www\codex-ceslb-recette\public_html\apps\backend\modules\fact_fourn\templates\_form_parStatut.php')
    in SF_ROOT_DIR\lib\vendor\symfony\lib\view\sfPHPView.class.php line 75 ...
    at sfPHPView->renderFile('C:\wamp\www\codex-ceslb-recette\public_html\apps\backend\modules/fact_fourn/templates/_form_parStatut.php')
    in SF_ROOT_DIR\lib\vendor\symfony\lib\view\sfPartialView.class.php line 110 ...
    at sfPartialView->render()
    in SF_ROOT_DIR\lib\vendor\symfony\lib\helper\PartialHelper.php line 218 ...
    at get_partial('fact_fourn/form_parStatut', array('facturefournisseur' => object('sfOutputEscaperIteratorDecorator'), 'form' => object('AffichageFactureParStatutForm'), 'configuration' => object('sfOutputEscaperObjectDecorator'), 'helper' => object('fact_fournGeneratorHelper')))
    in SF_ROOT_DIR\lib\vendor\symfony\lib\helper\PartialHelper.php line 180 ...
    at include_partial('fact_fourn/form_parStatut', array('facturefournisseur' => object('sfOutputEscaperIteratorDecorator'), 'form' => object('AffichageFactureParStatutForm'), 'configuration' => object('sfOutputEscaperObjectDecorator'), 'helper' => object('fact_fournGeneratorHelper')))
    in SF_ROOT_DIR\apps\backend\modules\fact_fourn\templates\parStatutSuccess.php line 16 ...
    at require('C:\wamp\www\codex-ceslb-recette\public_html\apps\backend\modules\fact_fourn\templates\parStatutSuccess.php')
    in SF_ROOT_DIR\lib\vendor\symfony\lib\view\sfPHPView.class.php line 75 ...
    at sfPHPView->renderFile('C:\wamp\www\codex-ceslb-recette\public_html\apps\backend\modules/fact_fourn/templates/parStatutSuccess.php')
    in SF_ROOT_DIR\lib\vendor\symfony\lib\view\sfPHPView.class.php line 185 ...
    at sfPHPView->render()
    in SF_ROOT_DIR\lib\vendor\symfony\lib\filter\sfExecutionFilter.class.php line 155 ...
    at sfExecutionFilter->executeView('fact_fourn', 'parStatut', 'Success', array('configuration' => object('fact_fournGeneratorConfiguration'), 'helper' => object('fact_fournGeneratorHelper'), 'form' => object('AffichageFactureParStatutForm'), 'facturefournisseur' => object('FactureFournisseur')))
    in SF_ROOT_DIR\lib\vendor\symfony\lib\filter\sfExecutionFilter.class.php line 116 ...
    at sfExecutionFilter->handleView(object('sfFilterChain'), object('fact_fournActions'), 'Success')
    in SF_ROOT_DIR\lib\vendor\symfony\lib\filter\sfExecutionFilter.class.php line 47 ...
    at sfExecutionFilter->execute(object('sfFilterChain'))
    in SF_ROOT_DIR\lib\vendor\symfony\lib\filter\sfFilterChain.class.php line 53 ...
    at sfFilterChain->execute()
    in SF_ROOT_DIR\lib\vendor\symfony\lib\filter\sfBasicSecurityFilter.class.php line 72 ...
    at sfBasicSecurityFilter->execute(object('sfFilterChain'))
    in SF_ROOT_DIR\lib\vendor\symfony\lib\filter\sfFilterChain.class.php line 53 ...
    at sfFilterChain->execute()
    in SF_ROOT_DIR\lib\vendor\symfony\lib\filter\sfRenderingFilter.class.php line 33 ...
    at sfRenderingFilter->execute(object('sfFilterChain'))
    in SF_ROOT_DIR\lib\vendor\symfony\lib\filter\sfFilterChain.class.php line 53 ...
    at sfFilterChain->execute()
    in SF_ROOT_DIR\lib\vendor\symfony\lib\controller\sfController.class.php line 233 ...
    at sfController->forward('fact_fourn', 'parStatut')
    in SF_ROOT_DIR\lib\vendor\symfony\lib\controller\sfFrontWebController.class.php line 48 ...
    at sfFrontWebController->dispatch()
    in SF_ROOT_DIR\lib\vendor\symfony\lib\util\sfContext.class.php line 170 ...
    at sfContext->dispatch()
    in SF_ROOT_DIR\web\backend_dev.php line 13 ...

  9. #9
    Membre confirmé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    265
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 265
    Par défaut
    Déjà l'origine de l'erreur est localisée :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    at sfForm->offsetGet('id_commande_fournisseur')
    in SF_ROOT_DIR\apps\backend\modules\fact_fourn\templates\_form_field.php line 7 ...
    Clairement, il y a un bout de code demandant de générer "id_commande_fournisseur" à un moment.

  10. #10
    Membre éclairé
    Femme Profil pro
    Développeur informatique
    Inscrit en
    Juin 2011
    Messages
    593
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Conseil

    Informations forums :
    Inscription : Juin 2011
    Messages : 593
    Par défaut
    Effectivement tu avais raison, en fait, c'est dans mon fichier generator.yml qu'il y a un display du champ id_commande_fournisseur.
    Du coup, je suis obligée d'ajouter ce champ dans mon formulaire...
    Voilà donc ce que j'ai fait:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     
    public function configure()
    	{		
    			$this->widgetSchema['id_commande_fournisseur']= new sfWidgetFormInputHidden();
    			$this->validatorSchema['id_commande_fournisseur']= new sfValidatorInteger(array('required' => false));
     
    			$this->widgetSchema['id_adresse_fournisseur']->setOption('label', 'Fournisseur');
    	}
    Mais ça me met toujours widget introuvable ... Pourquoi?

Discussions similaires

  1. Tester si un champ de formulaire est vide
    Par pekka77 dans le forum ASP
    Réponses: 3
    Dernier message: 28/06/2005, 16h18
  2. Champ de formulaire "file"
    Par tom06440 dans le forum Balisage (X)HTML et validation W3C
    Réponses: 4
    Dernier message: 26/05/2005, 13h56
  3. [Word] Création d'un champs de formulaire
    Par Oberown dans le forum Word
    Réponses: 2
    Dernier message: 18/04/2005, 11h10
  4. Réponses: 2
    Dernier message: 28/10/2004, 16h54
  5. Probleme avec les champs du formulaire
    Par Red_devils dans le forum Balisage (X)HTML et validation W3C
    Réponses: 8
    Dernier message: 29/09/2004, 13h06

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