码迷,mamicode.com
首页 > 编程语言 > 详细

python学习笔记-Day022 - F,Q

时间:2016-04-20 23:55:30      阅读:254      评论:0      收藏:0      [点我收藏+]

标签:python   update   import   f   q   

django中还有一个 F 和一个 Q


导入方式

from django.db.models import F


关于F :

使用方法

 F 比较好说, 他是用来指定表中的字段的,

比如说 table01 中的 size 字段加 1 的时候 ,

在SQL 中的语句是 

update table01 set size = size +1

django中 的则是

models.table01.objects.all().update(size = F("size")+1)

F("size") 表示的就是 当前行的size   , 这就是F的作用. 




关于Q

用于条件查询

像一些网站提供的指定多个搜索条件的高级搜索,就可以用Q来实现. 


使用方法:

from django.db.models import Q



condition1 = Q()

condition2 = Q()

condition3 = Q()


# 设定 condition1 ,多个条件, 或 关系 ,也可以设置其他关系

condition1.connector = "OR"

condition1.children.append(("id",1))

condition1.children.append(("id",3))


# 设定 condition2 ,多个条件, 或 关系,也可以设置其他关系

condition2.connector = "OR"

condition2.children.append(("name","alex"))

condition2.children.append(("name","eric"))


#将  condition1 和  condition2 一起放到 condition3

condition3.add(condition1,"ADD")

condition3.add(condition2,"ADD")


# 进行条件查询.

models.TableName.objects.filter(condition3) 


本文出自 “Will的笔记” 博客,请务必保留此出处http://timesnotes.blog.51cto.com/1079212/1766023

python学习笔记-Day022 - F,Q

标签:python   update   import   f   q   

原文地址:http://timesnotes.blog.51cto.com/1079212/1766023

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!