如何在Django的查询集中传递两个以上的参数?

时间:2018-11-20 08:44:21

标签: python django django-2.0

我希望我的问题能得到理解

例如,我有这个模型

class Area(models.Model):
  area_id = models.IntegerField()
  name = models.CharField()
  last_name = models.CharField()
  short_name = models.CharField()

我想用几个参数进行查询

如果找不到第一个,请寻找第二个,然后寻找第三个

filter_areas = Area.objects.filter(area_id=3 | name='area_name' | short_name='are')

类似于或|

1 个答案:

答案 0 :(得分:8)

您可以在此处使用Q对象:

from django.db.models import Q

Area.objects.filter(Q(area_id=1)| Q(name='name') | Q(short_name='are'))