2019-01-03Djago的增删改方法

request:请求
HttpResponse:响应

ORM —> 对象关系映射
objects —>数据库管理器
.create() —>插入数据,创建
.filter(条件) —> 过滤,取出的不是对象
.first() —>取出的是对象,第一个对象,一般跟在过滤条件后面,既更新字段又更新时间
.update(更改的字段) --> 更改字段,不更改时间
.delete() —> 删除数据
save() —> 保存
.all() —>所有对象
.exists() —> 判断结果是否存在
.order_by() —>排序
.exclude()—>不满足条件
条件__contains = 值 --> 模糊查询,包含
__startswith—>以某个字符开头的
__endswith —>以某个字符结束的
in —> 在某个范围内
pk
—> 主键
__get 大于等于
__gt 大于
__lt 小于
__lte 小于大于

插入,创建
第一种
.create()
方法:
模型名.objects.create(指定)

第二种
.save()
方法:
x=模型
x.字段=值
模型.save() —>保存


删除指定的
.filter(条件) —> 过滤,取出的不是对象
方法:
模型.objects.filter(条件).delete()

更新
第一种
.update(更改的字段) --> 更改字段,不更新时间
.filter(条件) —> 过滤,取出的不是对象
模型.objects.filter(条件).update(更改字段)

第二种
1.获取到指定的字段,要.first() —>获取到的是对象,获取到的是第一个数据.filter(条件) —> 过滤,取出的不是对象
模型.objects.filter(id=4).first()
模型.指定字段 = 值
模型.save —> 保存


查所有
.all() —>所有对象,得到的是一个列表
模型.objects.all()
可以通过for循环,模型.字段 得到值

指定查询
获取到指定条件里第一个
模型.objects.filter(条件).first() —>返回多个,只取第一个

模型.objects.get(条件) —> 返回多个就报错,只可以取唯一的一个对象,也就是只可以返回一个对象,

查询指定字段.values()
模型.objects.all().values(‘字段1’,‘字段2’)
查询所有字段
模型.objects.all().values()

过滤出满足条件的信息
模型.objects.filter(满足条件)
过滤出不满足条件的信息
模型.objects.exclude(不满足条件)

排序order_by
升序 默认可以不用写
模型.objects.order_by(‘条件‘)
降序 条件前加-
模型.objects.order_by(‘-条件‘)

判断结果是否存在exists(),返回True/False
模型.objects.filter(条件).exists()

判断结果有多少个count()
模型.objects.filter(条件).count()

模糊查询
__contains:包含
模型.objects.filter(条件__contains = ‘值’)
__startswit:以某个字符开头的
模型.objects.filter(字段__startswith=‘开头条件’)
__endswith:以某个字符结束的
模型.objects.filter(字段___endswith=‘结束条件’)

在某个范围内__in
模型.objects.filter(条件__in=[条件范围1])
如:Student.objects.filter(id__in=[1,2,3,4,5,6])

你可能感兴趣的:(2019-01-03Djago的增删改方法)