Q函数
-
说明
Q函数主要是解决属性之间的**与(&),或(|),非(~)**的问题
使用之前依旧是要导入Q函数
from django.db.models import Q -
使用示例
使用案例 说明 结果 关系 Book.objects.filter(Q(book_id__lt=3)&Q(book_name__contains=‘国’)) 查询书籍编号小于3且书籍名里面包含国的书籍的信息 QuerySet [<Book: Book object (1)>, <Book: Book object (2)>]> 与(&) Book.objects.filter(Q(book_id__lt=3)(或)Q(book_name__contains=‘红楼梦’)) 查询书籍编号小于3或者书籍名包含红楼梦的图书的信息 QuerySet [<Book: Book object (1)>, <Book: Book object (2)>]> 或 Book.objects.filter(~Q(book_id=3)) 查询书籍编号不为3的书籍的信息 QuerySet [<Book: Book object (1)>, <Book: Book object (2)>, <Book: Book object (4)>, <Book: Book object (5)>, <Book: Book object (6)>]> 非