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 :

sfWidgetFormSelectDoubleList personnaliser les valeurs à gauche et à droite [1.x]


Sujet :

Symfony PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2003
    Messages
    307
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Février 2003
    Messages : 307
    Par défaut sfWidgetFormSelectDoubleList personnaliser les valeurs à gauche et à droite
    Hello,

    Pour personnaliser les éléments non associés, pas difficile :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $this->widgetSchema['newss_list']->setOption('renderer_options', array('choices' => NewsTable::getNewsOrphan()));
    Jusque là ça va, ce qui se complique dans mon cas, c'est la colonne des associés

    Je m'explique, dans les non associés, tous les articles non attachés à une newsletter
    A droite, les articles associés à la newsletter en cours d'édition

    Le soucis, c'est que lorsque je suis en action "edit" la colonne des associés reste vide, car elle est alimentée de la sorte via ma méthode render de la class sfWidgetFormSelectDoubleList

    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
     
    public function render($name, $value = null, $attributes = array(), $errors = array())
      {
    ...
    #$choices = tableau fournit par NewsTable::getNewsOrphan()
    #$value = tableau contenant les éléments associés
    foreach ($choices as $key => $option)
        {
          if (in_array(strval($key), $value))
          {
            $associated[$key] = $option;
          }
          else
          {
            $unassociated[$key] = $option;
          }
        }
    ...
    On voit que les éléments associés sont puisés dans les éléments non associés
    Or dans mon cas, j'exclut les éléments déjà associés pour alimenter ma colonne de droite

    Autre exemple :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    #colonne non associés
    array('pomme','poire', 'orange')
    #colonne associés
    array('fraise','kiwi')
    Dans ce cas ci dessous la condition if (in_array(strval($key), $value))
    ne sera jamais valide

    Alors ma question est, peut-on surcharger la méthode render, ou dans mon cas voyez vous une autre solution ?

    Merci

  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
    Et zut, je n'ai plus de paracétamol près de moi !

    Je ne suis pas sur (en fait, si, j'en suis sur) d'avoir compris tes propos.

    Tu veux utiliser le widget permettant de lier deux tables en relation (n-n) mais en n'envoyant que les données déjà associées au widget, ce qui l’empêche d'afficher le non associée, qu'il ne peut deviner seul.

    Je ne comprend pas trop l'intérêt.

    De plus es-tu bien dans un schéma de relation n-n pure ?

    Si oui, pourquoi ne pas passer par le fonctionnement "normal" ?

  3. #3
    Membre éclairé
    Homme Profil pro
    Développeur Web
    Inscrit en
    Février 2003
    Messages
    307
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : Belgique

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Février 2003
    Messages : 307
    Par défaut
    Et zut, je n'ai plus de paracétamol près de moi !
    Pourtant j'ai essayé d'être claire

    L'intérêt ?

    Ici il s'agit d'un système de newsletter, quand on crée une nouvelle newsletter, on associe des news déjà encodées.
    Ce n'a pas de sens dans mon cas, d'avoir toute la liste news, même celles qui sont déjà associées aux autres newsletter.
    Une news ne se retrouvera jamais dans n newsletters
    Il s'agit d'une relation 1-n

    En faite en écrivant ces lignes, je me rend compte que j'ai fait une co****ie

    J'avais prévus une n-n pensant que une news serait dans plusieurs newsletter, hors après les premiers usages de l'applic, ce n'est pas nécessaire

    je vais refaire mon schéma

  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
    Comme quoi, en parlécrire peut servir...

    Bon, j'ai retrouvé du paracétamol et ma tête va mieux

    Je te laisse revoir ton schéma et revenir ici pour refaire la question, éventuellement

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

Discussions similaires

  1. trouver les valeurs d'une droite dans une matrice
    Par Liloucha dans le forum MATLAB
    Réponses: 1
    Dernier message: 11/05/2014, 17h24
  2. Créer Layout pour les partie gauche et droite
    Par nadjibnet dans le forum Composants graphiques
    Réponses: 2
    Dernier message: 29/04/2013, 09h54
  3. Réponses: 2
    Dernier message: 26/11/2008, 15h04
  4. Désactiver les fleches gauches/droite du clavier
    Par Tsukaasa dans le forum Delphi
    Réponses: 2
    Dernier message: 20/03/2007, 17h31
  5. [CR] lire les données de gauche a droite
    Par speed034 dans le forum SAP Crystal Reports
    Réponses: 1
    Dernier message: 14/10/2004, 18h23

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