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 :

Modifier filtre liste déroulante [1.x]


Sujet :

Symfony PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Juin 2010
    Messages
    96
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 96
    Par défaut Modifier filtre liste déroulante
    Bonjour,

    Dans un de mes filtres, j'ai une liste d'id étrangers ou NULL.

    J'aimerais faire un test sur l'élément NULL. A la place de ma liste déroulante, je préferai une cas à cocher afin d'afficher que les éléments qui ne contiennent pas NULL.

    Est-ce possible ? Si oui comment ?

    Merci d'avance

  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
    C'est un peu vague comme question.

    D'autant qu'en générale, dans une liste, c'est la clef primaire qui sert de lien et que des clefs primaires null (plussieurs !!!) sont un peu incompatibles avec ma vision des choses.

    Et je ne vois pas comment tu pourrais intégrer une case à cocher dans une liste ???

    Reste que pour débarrasser ta liste des valleurs null, tu à la possibilité, lorsque tu définis ton widget de sélection, de lui préciser la méthode du modèle qui va retourner les données, il ne te reste plus qu'à créer une méthode qui retourne toutes les valeurs dont la clef n'est pas null.

    Mais je ne suis pas sur que ceci soit la réponse que tu attends.

  3. #3
    Membre confirmé
    Inscrit en
    Juin 2010
    Messages
    96
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 96
    Par défaut
    Ok je la reformule. J'ai une liste. Cela ne m'interesse pas d'avoir la clé primaire.
    Exemple:
    Une homme peut avoir une et une seul voiture. J'insiste sur le peut avoir. C'est à dire qu'une personne peut donc posséder un véhicule.

    Maintenant, du coup, j'ai une liste de voiture (vu que dans le modèle personne, j'ai une clé étrangère qui pointe sur une voiture). J'aimerais donc avoir un filtre, non pas sur la voiture mais sur le faite qu'une personne possède une voiture ou pas. Donc si la valeur de la clé étrangère est NULL ou pas.

  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
    Donc tu as deux tables liées par une liaison (0,1)<->(0,n).

    Et tu souhaites pouvoir retrouver, dans la première tables, tous les enregistrements qui n'ont pas de liaisons avec l'autre table ?

    C'est au niveau de la requête qu'il faut le préciser dans le genre :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    $q = Doctrine_Query::create()->
                   from('tableun t')->
                   where('t.tabledeux_id = NULL')->
                   execute();
    Mais j'ai encore l'impression d'être hors sujet...

  5. #5
    Membre expérimenté

    Profil pro
    Inscrit en
    Mai 2008
    Messages
    186
    Détails du profil
    Informations personnelles :
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mai 2008
    Messages : 186
    Par défaut
    Non moi je crois que c'est ça aussi qu'il voulait.

    Filtrer les personnes qui n'ont pas encore de voitures.

  6. #6
    Membre confirmé
    Inscrit en
    Juin 2010
    Messages
    96
    Détails du profil
    Informations forums :
    Inscription : Juin 2010
    Messages : 96
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    Non moi je crois que c'est ça aussi qu'il voulait.
     
    Filtrer les personnes qui n'ont pas encore de voitures.
    oui tout à fait spike.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Donc tu as deux tables liées par une liaison (0,1)<->(0,n).
    Exact


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    C'est au niveau de la requête qu'il faut le préciser dans le genre :
    Mais comme c'est dans un filtre, je ne sais pas comment changer la requête correspondante. Au lieu de la liste des clé étrangère des voiture.

    J'aimerais une checkbox : Sans voiture ? [x] <= checkbox à cocher.

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

Discussions similaires

  1. [AC-2007] Modifier valeur Liste Déroulante
    Par wiidle dans le forum IHM
    Réponses: 1
    Dernier message: 10/02/2012, 09h50
  2. [XL-2007] Création d'un formulaire modifiable avec liste déroulante
    Par loloduquebec dans le forum Macros et VBA Excel
    Réponses: 0
    Dernier message: 21/09/2011, 23h54
  3. [AC-2007] Double filtre liste déroulante
    Par theuma dans le forum Access
    Réponses: 4
    Dernier message: 10/05/2011, 08h06
  4. Réponses: 1
    Dernier message: 15/02/2010, 11h54
  5. Modifier une liste déroulante (Combobox)
    Par alex.a dans le forum Macros et VBA Excel
    Réponses: 3
    Dernier message: 19/06/2007, 12h22

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