前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >二、Django简单的增删改查

二、Django简单的增删改查

作者头像
Dreamy.TZK
发布2020-04-09 14:46:34
3100
发布2020-04-09 14:46:34
举报
文章被收录于专栏:小康的自留地小康的自留地

增加数据

第一种方式

代码语言:javascript
复制
def index(request):
    #创建记录方式1
    #实例化要添加的记录(对象)
    student_obj = models.Student(
        name='dazhuang',
        age=23,
    )
    #自动刷新并存储到数据库
    student_obj.save()
    return render(request,'index.html')

第二种方式 常用方法

代码语言:javascript
复制
def index(request):
    #创建记录方式2
    # new_obj为返回值,返回这个类的对象 (model对象)
    new_obj = models.Student.objects.create(name='xiaozhuang',age=5)
    print(new_obj.name)
    print(new_obj.age)
    return render(request,'index.html')

第三种方式 批量创建

代码语言:javascript
复制
def index(request):
    #创建方式3 批量创建
    objs = []
    for i in range(20):
        obj = models.Student(
            name='xiangxi%s'%i,
            age = 10+i,
        )
        objs.append(obj)
    models.Student.objects.bulk_create(objs)

第四种方式 update_or_create

有就更新,没有就创建

代码语言:javascript
复制
models.Student.objects.update_or_create(
        name='xiangxi0',
        defaults={
            'age':48,
        }
    )

删除数据

通过model对象或queryset对象调用delete方法

代码语言:javascript
复制
def delete(request):
    # models.Student.objects.get(id=2).delete()
    models.Student.objects.filter(name='xiaozhuang').delete()
    return render(request,'index.html')

简单查询数据

获取全部数据

利用all()方法

代码语言:javascript
复制
def select(request):
    # 查询所有记录  如果不是一条数据,则返回一个结果集   类似于列表
    all_objs = models.Student.objects.all()
    print(all_objs)
    for i in all_objs:
        print(i.name)
    return render(request,'index.html')

条件查询 filter

查询条件作为参数传入即可。

查到返回结果,否则反回空列表(QuerySet对象)

代码语言:javascript
复制
def select(request):
    #条件查询  查询id等于3的数据
    objs = models.Student.objects.filter(id=3)
    print(objs)
    return render(request,'index.html')

条件查询 get

与filter类似,但返回的是model对象。get方法有且必须只有一条记录

更新数据

修改数据只能是queryset对象,不能是model对象

代码语言:javascript
复制
def update(request):
    models.Student.objects.filter(id=1).update(age=38)
    return render(request,'index.html')
本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
原始发表:2020-01-29,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 增加数据
    • 第一种方式
      • 第二种方式 常用方法
        • 第三种方式 批量创建
          • 第四种方式 update_or_create
          • 删除数据
          • 简单查询数据
            • 获取全部数据
              • 条件查询 filter
                • 条件查询 get
                • 更新数据
                领券
                问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档