潭州课堂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

 

 

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

 

posted @ 2018-11-07 06:34  25班Ph201805201  阅读(165)  评论(0编辑  收藏  举报