潭州课堂25班:Ph201805201 django框架 第六课 模型类增删改查,常用 的查询矣查询条件 (课堂笔记)
在视图函数中写入增删改查的方法
增:
在 urls 中配置路径 :
查:
1:
在后台打印数据
在模型类中添加格式化输出 :
QuerySet,反回的是个对象,可以按索引聚会,用 for 循环,,
找第一条和最后一条数据
2:
3:
QuerySet,反回的是个对象
删
改
查补充:
常用查询方法:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 | def search_base(request): re = User.objects. all () print (re[ 0 ].name) print (re[ 0 ].age) print (re[ 1 ].name) print (re[ 1 ].age) print (re.first()) # 第一条数据 print (re.last()) # 最后一条数据 User.objects. filter (name = '小明' ,age = 18 ,) # 多条件查询 User.objects.exclude(name = '小军' ,age = 22 ) # 排除法,查不满足条件 User.objects.get(name = '小军' ,age = 22 ) # 查询到的对象只有一个,如果有多个会报错 User.objects.order_by( 'age' ) # 按年龄排序输出 (默认从小到大,) User.objects.order_by( '-age' ,) # 按年龄排序输出 (从大到小) User.objects.order_by( '-age' , '-id' ) # 按年龄排序输出 (从大到小)(可以写多个条件 ) re = User.objects. all ().values() # 转换成字典输出 r = User.objects.count() # 查看有几条数据 # 条件查询 User.objects. filter (name__contains = '小' ) User.objects. filter (name__startswith = ) # 忽略大小定 User.objects. filter (name__endswith = ) # 以什么开头 User.objects. filter (name__iendswith = ) # 以什么结尾 User.objects. filter (age__in = [ 12 , 13 , 14 ]) # 包含 User.objects. filter (age__range = ( 12 , 20 )) # 包含 User.objects. filter (age__gt = 18 ) # 大于 User.objects. filter (age__gte = 18 ) # 大于,等于 User.objects. filter (age__lt = 18 ) # 大于 User.objects. filter (age__lte = 18 ) # 大于, 等于 User.objects. filter (age__isnull = True ) # 数据是否为空 return HttpResponse( '查询数据成功' ) |
查询条件:
在一个已经存在的表中要添加字段时,
必须添加 null=True, 或者设个默认值: default=''
然后执行 makemigrations
执行 migrate
如果 要删除一个表,注释对应的类后,执行命令,
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步