我希望在过滤对象数据时在django中使用带OR
条件的过滤器。
我有一个类的对象,我有3或4个字段,我想在Django中使用OR
条件过滤数据。
例如。
Obj = Books.objects.filter(title=title or price=price or description=description or author=author)
我认为这不是执行过滤的正确方法。
在我的django过滤器中使用OR
条件的正确方法是什么
答案 0 :(得分:2)
from django.db.models import Q
Obj = Books.objects.filter(Q(title=title) | Q(price=price) | Q(description=description) | Q(author=author))
文档:http://docs.djangoproject.com/en/dev/topics/db/queries/#complex-lookups-with-q-objects 资料来源:https://stackoverflow.com/a/739922/4808939