Django-fr

Forum

#1 06-03-2012 09:07:50

sesame
Membre
Inscription : 22-03-2011
Messages : 263

chainage de requete

bonjour

j'ai essayé de chainer deux requetes :

donnee1 = Q(val_champ__icontains = val1) & Q(val1__gt=q-2, val1__lte=q+1)
donnee2 = Q(val_champ__icontains = val2) & Q(val2__gt=q1-2, val2__lte=q1+1)

unit_total = UniteProperty2.objects.filter( donnee1 & donnee2)


visiblement ca ne marche pas trop..

quelle est le meilleur moyen ?

Hors ligne

#2 07-03-2012 10:23:12

M. Namgyal Brisson
Membre
Inscription : 07-03-2012
Messages : 8

Re : chainage de requete

Essaye avec un tuple smile

exemple:

qset = (
                Q(val_champ__icontains=val1) &
                Q(val_champ__icontains=val2)
            )
            result = UniteProperty2.objects.filter(qset)



Le 6 mars 2012 09:07, sesame <pat.100 _AT_ hotmail.fr> a écrit :

> bonjour
>
> j'ai essayé de chainer deux requetes :
>
> donnee1 = Q(val_champ__icontains = val1) & Q(val1__gt=q-2, val1__lte=q+1)
> donnee2 = Q(val_champ__icontains = val2) & Q(val2__gt=q1-2,
> val2__lte=q1+1)
>
> unit_total = UniteProperty2.objects.filter( donnee1 & donnee2)
>
>
> visiblement ca ne marche pas trop..
>
> quelle est le meilleur moyen ?
> _______________________________________________
> django mailing list
> django _AT_ lists.afpy.org
> http://lists.afpy.org/mailman/listinfo/django
>

Hors ligne

#3 07-03-2012 13:21:06

sesame
Membre
Inscription : 22-03-2011
Messages : 263

Re : chainage de requete

bonjour

marche pas

je relie bien dans ma fonction val1, val2, q, q1

mais impossible de faire le filtrage concernant val2  (donnee2)

si je fais un print de donnee2,  j' obtiens []

alors que pour donnee1 j'obtiens [<UniteProperty2:Al2O3>, <UniteProperty2:CN56>]

que peut il bien se passer ???

Hors ligne

Pied de page des forums