Djangofilter的值列表

我敢肯定,这是一个微不足道的操作,但我无法弄清楚它是如何完成的…我怎样才能创build一个Django查询的值列表。

有一些比这更聪明的东西:

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

我正在寻找让他们在一个节目中像这样的东西:

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

从Django文档 :

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

当你有项目列表,你想检查列表中可能的值,那么你不能使用=

SQL查询将像SELECT * FROM mytable WHERE ids=[1, 3, 6, 7, 9]这是不正确的。 你必须in运算符中使用in这样你的查询就像SELECT * FROM mytable WHERE ids in (1, 3, 6, 7, 9) __in SELECT * FROM mytable WHERE ids in (1, 3, 6, 7, 9)那个Django提供了__in运算符。