Opened 9 years ago
Closed 9 years ago
#25982 closed New feature (needsinfo)
Djago ORM. Filter using multi-valued queryset
Description ¶
As I understand it, and from the error I received, trying to filter based on a multi-valued queryset cant be done (the error I received was something like "cant filter using multi-valued querysets"). It is possible that one may wish to filter based on a pair of values. Commutativity of the tuples should be considered. Eg Filter the following:
Object.objects.values_list("v1","v2").filter(AnotherObject.objects.values_list("v1","v2"))
Eg,
[(1,2),(5,7),(3,8),(9,3)].filter ([(1,2),(3,9)]) = [(5,7),(3,8),(9,3)]
here (9,3) == (3,9) is false. Non-commutative
For commutative comparison we have Eg,
[(1,2),(5,7),(3,8),(9,3)].filter ([(1,2),(3,9)]) = [(5,7),(3,8)]
here (9,3) == (3,9) is true.
The non-commutative case was necessary in an example I had. I hacked it where I created lists and compared using lists. However this requires a db evaluation.
Change History (2)
comment:1 by , 9 years ago
comment:2 by , 9 years ago
Resolution: | → needsinfo |
---|---|
Status: | new → closed |
Could you refine the description with some actual models and sample code. It's a bit unclear as is. Thanks.