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

 PHP Discussion :

Paramètre id avec executeNew [1.x]


Sujet :

PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    74
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 74
    Par défaut Paramètre id avec executeNew
    Bonjour,

    J'ai créé un url pour créer un nouveau "comment" avec l'id du "contact".
    /frontend_dev.php/comment/new/id/2
    Le CommentForm est lancé:

    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
    class CommentForm extends BaseCommentForm
    {
      public function configure()
      {
     
        $this->setWidgets(array(
          'id'         => new sfWidgetFormInputHidden(),
          'contact'    => new sfWidgetFormDoctrineChoice(array('model' => $this->getRelatedModelName('contact'), 'add_empty' => false)),
          'comment'    => new sfWidgetFormInputText(),
     
        ));
     
        $this->setValidators(array(
          'id'         => new sfValidatorChoice(array('choices' => array($this->getObject()->get('id')), 'empty_value' => $this->getObject()->get('id'), 'required' => false)),
          'contact'    => new sfValidatorDoctrineChoice(array('model' => $this->getRelatedModelName('contact'))),
          'comment'    => new sfValidatorString(array('max_length' => 255)),
     
        ));
     
      }
    }
    Et voilà mon executeNew:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    public function executeNew(sfWebRequest $request)
      {
        $this->form = new CommentForm();
      }
    Dans la class Contact, j'ai ajouté le __toString(). J'obtiens bien une liste des différents contacts lorsque je lance l'url New

    Question: Je ne trouve comment sélectionner l'utilisateur de cette liste avec l'id dans l'url.

  2. #2
    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
    Tu veux une url dans le genre :
    /frontend_dev.php/blog/Laurent001/newComment
    ?

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    74
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 74
    Par défaut
    Je me doutais que ma question n'était pas claire.

    Lorsque je clique sur l'url
    /frontend_dev.php/comment/new/id/2
    J'atterris sur une page où un select me propose tous mes "contact":
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    'contact'    => new sfWidgetFormDoctrineChoice(array('model' => $this->getRelatedModelName('contact'), 'add_empty' => false)),
    Le positionnement du select est sur le premier élément de la liste (id=1 dans mon cas).
    J'aimerais exploiter le id=2 de mon url dans mon select.
    /frontend_dev.php/comment/new/id/2
    Ou dit autrement: en regardant le code html, il n'y a pas de "selected" généré dans le <select>.

  4. #4
    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
    Bon, je vais reformuler pour être sur.

    Tu souhaites changer, dans un select, l'élément par défaut.

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Octobre 2007
    Messages
    74
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2007
    Messages : 74
    Par défaut
    Non. Par défaut il ne fait rien. En regardant le code html généré aucun "selected" n'aparait dans le <select>.

    Avec l'url:
    /frontend_dev.php/comment/new/id/2
    J'obtiens:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    <select name="contact" id="contact">
    
    <option value="1">contact1</option>
    <option value="2">contact2</option>
    <option value="3">contact3</option>
    </select>
    Et j'aimerais avoir comme résultat
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    123456
    <select name="contact" id="contact">
    
    <option value="1">contact1</option>
    <option value="2" selected >contact2</option>
    <option value="3">contact3</option>
    </select>

  6. #6
    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
    Malgré le non, je vais considérer cela comme un oui, vu que tu me décris exactement ce que j'avais reformulé.

    Je suppose que tu as une action qui initialise un form.

    Quel est le type de form initialisé ? Est-il basé sur un sfFormSymfony ou sur un sfFormDoctrine ? Le comportement n'est pas exactement le même. Tu peux facilement identifier s'il vient d'un sfFormDoctrine, il sont en général généré automatiquement dans lib/form/doctrine/

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

Discussions similaires

  1. Réponses: 7
    Dernier message: 19/02/2008, 15h30
  2. Réponses: 1
    Dernier message: 11/09/2007, 10h12
  3. Paramètre URL avec inclusion de page
    Par bogsy15 dans le forum Langage
    Réponses: 3
    Dernier message: 24/07/2007, 18h45
  4. Paramètre dynamique avec valeur null
    Par nanouille56 dans le forum SAP Crystal Reports
    Réponses: 3
    Dernier message: 21/11/2006, 13h22
  5. paramétrer ADOConnection avec des variables
    Par ouckileou dans le forum Bases de données
    Réponses: 3
    Dernier message: 23/04/2004, 08h11

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