数据操作
- models.xxx.objects.create(title='xx') 增
- filter(id=1,name='ff') 查 and关系
- filter(id=1,name='ff').update()
- filter(id=1,name='ff').delete()
- all()
- .values() 返回字典
- .count() 获取个数
- values_list() 返回元组
- values_list() # 反:小写表名__
- bulk_create() 批量添加
- q = models.xx.objects.all().only('id') 只查看id的
- F, 更新数据,每个人年龄+
- Q 构造复杂的查询调节,和filte()一起用
- filter().a.....filter()
- order_by() 排序 加个- 倒序
- extra 额外的
- select={x:"1"} select 1 as x fro....tb,fa select 对应是字典类型
- tables=['x',] tables 对应列表、元组类型
- where
- order_by
- params
- select_params
-
- filter(id__range=[1,3]) 取的一个范围
- exclude 取反 ,不包括
- exsit 是否存在
- anotate 组合起来group by
- raw('select id,title ',) 原生的select语句
- aggregate 聚合函数
- filter(id__gt) 大于
- filter(id__lt) 小于
- filter(id__lte)
- filter(id__gte)
- filter(id__in=[1,2]) in 对应的是 列表类型
- first() 取第一个
- last() 取最后一个
- defer() 里面 写谁就不取谁
- connection 原生select
- max,min,count,sum,avg 取聚合 的时候
- makemigrations 创建数据库的命令
- migrate
- reverse
- distinct
- get() 选一个,没有会报错,多了也会报错
- dates 取时间
- filter(age=None)
- filter(age__isnull=True) 判断是否为空
- using
class Foo:
xx = in
.
1. 增
create(name='xx',age='xx'.....)
dic={name"xxx,age}
create(**dic)
2. 更新
models.xx.objects.filter(id=1).update(a=1,b=2)
models.xx.objects.filter(id=1).update(**dic)
3. 查询
models.xx.objects.filter(id=1,xxx)
models.xx.objects.filter(**{'id':1,'name':'alex'})
PS: Django帮助我们数据转换 -> 字典 =》 Form组件(用户请求规则验证+数据字典)