How can I filter a Django query with a list of values?

704    Asked by Asisthapandey in Devops , Asked on Apr 11, 2021

I'm sure this is a trivial operation, but I can't figure out how it's done.

There's got to be something smarter than this:

ids = [1, 3, 6, 7, 9] 
for id in ids:
MyModel.objects.filter(pk=id)

I'm looking to get them all in one query with something like:

MyModel.objects.filter(pk=[1, 3, 6, 7, 9])

How can I filter a Django query with a list of values? How Django queryset to list ?

Answered by Aryan Tandon

You can use the below mentioned piece of code from the Django documentation to filter a Django query with a list of values:

  Blog.objects.filter(pk__in=[1, 4, 7])


Your Answer

Interviews

Parent Categories