zoukankan      html  css  js  c++  java
  • 实训第八天 有关python orm 的学习记录 常用方法01

    沿用第七天的数据库,数据库现在是这样的:

    配置好主路由include子路由

    子路由引入views

    在views页面定义test测试请求如下:

    def test(request):
    # 1.all()方法:获取所有的对象,返回一个QuerySet类型
    ret = models.Person.objects.all()
    print(ret) # <QuerySet [<Person: <obj name:lxkk>>, <Person: <obj name:kkk>>, <Person: <obj name:las>>, <Person: <obj name:lls>>]>
    print(ret[1].name, ret[1].age)

    运行结果:

    # 2.filter()方法,过滤出符合条件的对象,返回一个QuerySet类型
    ret = models.Person.objects.filter(age=21)
    print(ret)
    print(ret[0].name)

    # 多个条件
    # 转换成sql后使用and连接
    ret = models.Person.objects.filter(age=21, height=175)
    print(ret)

    # 3.get()方法:获取具体的某一个对象 ,如果查询不到则报错,如果查询出多个来也会报错,返回值是符合条件的对象
    ret = models.Person.objects.get(id=14)
    print(ret)
    print(ret.age)

    # 4.first()返回查询的第一个对象
    ret = models.Person.objects.filter(age=21).first()
    print(ret)

    ret = models.Person.objects.filter(age=19).first()
    print(ret) # 列表信息存在
    print(ret[0].name) # 命令行下打印查找到的信息


    ret = models.Person.objects.filter(age=50).first()
    print(ret) # 列表为空
    print(ret[0].name) # 报错

    ret = models.Person.objects.filter(age=50).first()
    print(ret) # 列表中不存在相匹配的信息,不报错,返回None

    # 5.last()方法:取出查询结果的最后一个,返回一个具体的对象
    ret = models.Person.objects.filter(age=21).last()
    print(ret)

    # 6.order_by() 排序:默认按照升序排序,在属性前面添加‘-’号表示降序
    ret = models.Person.objects.filter(age=21).order_by('id')
    print(ret) # 升序

    ret = models.Person.objects.filter(age=21).order_by('-id')
    print(ret) # 降序

     # 如果有多个排序规则,则使用逗号隔开即可
    ret = models.Person.objects.order_by('age', '-id')
    print(ret)

    return HttpResponse('常用方法')

  • 相关阅读:
    Qt Qwt之坐标轴移动
    Lnux 16.04 VM下安装与汉化
    【学习笔记】开源日志记录工具log4j使用方法
    【学习笔记】关于DOM4J:使用DOM4J解析XML文档
    DOM的概念和简单应用:使用DOM解析XML数据
    初识Socket通信:基于TCP和UDP协议学习网络编程
    java 中的Scanner
    跟着前辈学编程
    集合应用案例:编写程序实现学生信息管理系统的录入登录
    简单Java程序向实用程序的过度:二进制文件的读写
  • 原文地址:https://www.cnblogs.com/shugelx/p/12129525.html
Copyright © 2011-2022 走看看