1.新建一个py文件
2.代码环境搭建django
1 import os 2 3 if __name__ != '__main__': 4 exit() 5 6 # 加载django项目的配置信息 7 os.environ.setdefault("DJANGO_SETTINGS_MODULE", "orm_pro.settings") # 就在manage.py 文件中第8行 8 # 导Django 并 启动Django项目 9 import django 10 django.setup() 11 12 from app01 import models
3.输入须要测试的查询代码app
13种查询方法测试
语法 做用spa
all() 查询所有
get(字段='xx') 查找指定值的对象 没有结果会报错
filter(条件) 做用同上,没有不会报错 返回列表
exclude(条件) 排除查询,返回不符合条件的全部对象 返回列表
values(字段,) 按字段 返回字段值 返回字典
values_list(字段,) 同上,返回列表,里边是元祖
order_by(字段) 根据指定字段排序
reverse() 反向排序! 前提是已经有顺序才能反序
distinct() 查询结果去重
count() 取查询到的对象 列表个数
first() 第一个
last() 最后一个
exists() 若是返回列表有数据就返回True,不然返回Falsecode
实例orm
1 import os 2 3 # 在py中测试ORM的代码环境搭建: 4 if __name__ == '__main__': 5 # 加载django项目的配置信息 6 os.environ.setdefault("DJANGO_SETTINGS_MODULE", "orm_pro.settings") # 就在manage.py的第六行 7 # 导Django 并 启动Django项目 8 import django 9 django.setup() 10 11 from app01 import models 12 13 # all()查询 14 ret = models.Person.objects.all() 15 print(ret) 16 17 # get查询 (查询没有对应结果时会报错) 取到对象 18 ret = models.Person.objects.get(name='老王') 19 print(ret) 20 21 # filter(**kwargs) 同get但不报错, 取到对象列表,能够批量查询 22 # 对象列表 ,在django叫 QuerySet对象 23 ret = models.Person.objects.filter(id=1) # 查询id1的对象列表 24 print(ret[0]) 25 26 # exclude 排除查询 返回列表 27 ret = models.Person.objects.exclude(id=1) # 取除id=1以外的全部 28 print(ret) 29 30 # values 按字段 来查找返回,该字段的值(列表)里边是字典 31 ret = models.Person.objects.values('id','name') 32 print(ret) # [{'id': 1, 'name': '小张'}, {'id': 2, 'name': '老王'}] 33 34 # values_list 同上,返回列表,里边是元祖 35 ret= models.Person.objects.values_list('id','name') 36 print(ret) # [(1, '小张'), (2, '老王')] 37 38 # order_by 根据指定字段排序 39 ret = models.Person.objects.order_by('id') 40 print(ret) 41 42 # reverse 反向排序! 前提是已经有顺序才能反序 43 ret = models.Person.objects.order_by('id').reverse() 44 print(ret) 45 46 # distinct() 去重 47 48 # count() 取 查询到的对象 列表个数 49 50 # first() 第一个 51 52 # last() 最后一个 53 54 # exists() 若是返回列表有数据就返回True,不然返回False