Django-利用orm批量插入

bulk_create方法

bulk_create方法是django orm特地提供给我们的方便批量操作数据库的方式,效率非常高。

将views.py中原先的视图函数稍作变化

以下例子为实现向数据库一次性插入一万条数据。

def get_book(request):
    l = []
    for i in range(10000):
        l.append(models.Book(title='第%s本书'%i))
        
    models.Book.objects.bulk_create(l)  # 批量插入数据
        return render(request,'get_book.html',locals())

如果没有buik_create方法,我们只能使用for循环一条一条的插入,效率很低

from django.shortcuts import render, HttpResponse, redirect
from app01 import models

def get_book(request):
  # for循环插入1000条数据
  for i in range(1000):
    models.Book.objects.create(name='第%s本书'%i)
  book_queryset = models.Book.objects.all()     # 将插入的数据再查询出来
  return render(request,'get_book.html',locals())  # 将查询出来的数据传递给html页面
posted @ 2020-12-01 10:11  王寄鱼  阅读(823)  评论(0编辑  收藏  举报