单表查询的API介绍
单表查询的API介绍
一、返回的查询对象:
1.返回的QuerySet对象:
1.all() 2.filter() 3.exclude() 4.values() #返回字典型 5.values_list() #返回元组 6.order_by() 7.reverse() 8.distinct() #values去重
二、表单查询操作
views.py
#配置三件套渲染、跳转、字符串配置 from django.shortcuts import render,redirect,HttpResponse #引入models.py文件 from .import models def users(request): # 查询所有的users user_list = models.User.objects.all() #.all()得到user的是个对象列表 user1 = models.User.objects.first() #.first()返回单个对象 user2 = models.User.objects.filter(username="xiaohong") #返回结果:<QuerySet [<User: xiaohong>]> 这是一个对象列表。 user3 = models.User.objects.filter(username="xiaohong",age=11) #返回结果:<QuerySet [<User: xiaohong>]> 还是一个列表。 dic1 = {"username":"xiaogang","age":10} user4 = models.User.objects.filter(**dic1) #把字典拆分成关键字参数传到变量里边。 #get方法用的少 user5 = models.User.objects.get(id=10) #使用get方法条件不满足就会报错。 user6 = models.User.objects.filter(id=10) if len(user6)>0: print(user6[0].username) else: print("没有此用户") user7 = models.User.objects.exclude(username="xiaohong") #排除对象本身全部显示,返回的还是一个QuerySet对象就是一个列表。 # 创建数据 # 第一种 创建数据并提交到数据库 new_user = models.User.objects.create(username="xiaoli",age=10) # 第二种创建方式 # 只创建数据未提交到数据库 new_user2 = models.User(username="xiaohhh",age="11") # 向数据库提交必须执行以下指令。 new_user2.save() # 删除 # 先查找要删除的数据 models.User.objects.filter(age=10).delete() # 改 # 第一种方式 # 首先要知道要改的是谁然后再去改 models.User.objects.filter(age=10).update(username="xiaohua") # 第二种方式 user11 = models.User.objects.filter(age=10).first() user11.username = "xiaolong" # 最后提交save() user11.save()