Q对象
Posted fangsheng
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Q对象相关的知识,希望对你有一定的参考价值。
1、一个Q:
Book.objects.filter(Q(id=3)).first()
2、多个Q:
Book.objects.filter(Q(id=2) | Q(title="java")).first()
3、Q里面的字段可以用下划线:
Book.objects.filter(Q(price__gte=6)|Q(id__gt=1)).first()
4、gt大于等于 ~Q就是非的意思:
Book.objects.filter(Q(price__gte=6) | ~Q(id__gt=1)).first()
5、Q.children.append()和Q.add():
remove_book = Q() temp1 = Q() temp.connector = "AND" # 连接的条件是AND ,默认就是AND temp .children.append(("room_id", 1)) # room_id 代表的是数据库的字段 temp .children.append(("time_id", 2)) # 等同于:room_id=1 & time_id=2 temp2 = Q() temp2 .connector = "AND" # 可以不写的 temp2 .children.append(("room_id", 1)) # 同样数据库里username字段 temp2 .children.append(("time_id", 3)) # 等同于:room_id=1 & time_id=3 remove_book .add(temp1, "OR") remove_book .add(temp2, "OR") # remove_book里面的条件结果就是: (room_id=1 & time_id=2) | (room_id=1 & time_id=3) Book.objects.filter(remove_book ).remove() # 删除符合条件的数据
以上是关于Q对象的主要内容,如果未能解决你的问题,请参考以下文章
错误代码:错误域 = NSCocoaErrorDomain 代码 = 3840“JSON 文本没有以数组或对象和允许未设置片段的选项开头。”