• 潭州课堂25班:Ph201805201 django框架 第六课 模型类增删改查,常用 的查询矣查询条件 (课堂笔记)


    在视图函数中写入增删改查的方法

    增:

    在 urls 中配置路径 :

     

     查:

    1:

    在后台打印数据 

    在模型类中添加格式化输出 :

    QuerySet,反回的是个对象,可以按索引聚会,用 for 循环,,

    找第一条和最后一条数据 

    2:

    3:

    QuerySet,反回的是个对象

     改

     

    查补充:

     常用查询方法:

    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

    如果 要删除一个表,注释对应的类后,执行命令,

  • 相关阅读:
    win10系统u盘安装单个文件超过4g解决办法
    单片机下使用IIC
    uart
    socket
    Linux中 ./configure --prefix命令
    linux下配置安装python3
    linux下的dhcp服务器实现
    安卓出现错误: java.lang.ClassCastException: android.widget.TextView cannot be cast to android.widget.EditText
    C语言基础02
    C语言基础01
  • 原文地址:https://www.cnblogs.com/gdwz922/p/9920371.html
Copyright © 2020-2023  润新知