Django 批量插入数据的实现方法


Posted in Python onJanuary 12, 2020

项目需求:浏览器中访问django后端某一条url(如:127.0.0.1:8080/get_book/),实时朝数据库中生成一千条数据并将生成的数据查询出来,并展示到前端页面

views.py

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页面

urls.py

from django.conf.urls import url
from app01 import views

urlpatterns = [
 url(r'^get_book/',views.get_book)
]

models.py

from django.db import models

class get_book(models.Model):
 title = models.CharField(max_length=64)

get_book.html

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8">
  <title>Title</title>
  <script src="https://cdn.bootcss.com/jquery/3.4.1/jquery.min.js"></script>
  {% load static %}
  <link rel="stylesheet" href="{% static 'bootstrap-3.3.7-dist/css/bootstrap.min.css' %}" rel="external nofollow" >
  <link rel="stylesheet" href="{% static 'dist/sweetalert.css' %}" rel="external nofollow" >
  <script src="{% static 'bootstrap-3.3.7-dist/js/bootstrap.min.js' %}"></script>
  <script src="{% static 'dist/sweetalert.min.js' %}"></script>
</head>
<body>
{% for book_obj in book_queryset %}
   <p>{{ book_obj.title }}</p>
{% endfor %}
</body>
</html>

上述代码书写完毕后启动django后端,浏览器访问,会发现浏览器会有一个明显的卡顿等待时间,这是因为后端在不停的操作数据库,耗时较长,大概需要等待一段时间之后才能正常看到刚刚插入的1000条数据,很明显这样操作数据库的效率太低,那有没有一种方式是专门用来批量操作数据库的呢?答案是肯定的!

bulk_create方法

将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())

代码修改完毕之后其他地方无需改动,重启django项目浏览器重新访问,你会立马发现数据量增大十倍的情况下页面出现的速度比上面还快。

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

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python使用marshal模块序列化实例
Sep 25 Python
python记录程序运行时间的三种方法
Jul 14 Python
Python实现随机选择元素功能
Sep 14 Python
Python实现的用户登录系统功能示例
Feb 05 Python
PYTHON绘制雷达图代码实例
Oct 15 Python
用Python画小女孩放风筝的示例
Nov 23 Python
python实现自动化报表功能(Oracle/plsql/Excel/多线程)
Dec 02 Python
python GUI库图形界面开发之PyQt5开发环境配置与基础使用
Feb 25 Python
Python格式化输出--%s,%d,%f的代码解析
Apr 29 Python
python 进程池pool使用详解
Oct 15 Python
详解Python之Scrapy爬虫教程NBA球员数据存放到Mysql数据库
Jan 24 Python
Python pyecharts案例超市4年数据可视化分析
Aug 14 Python
python处理RSTP视频流过程解析
Jan 11 #Python
pyftplib中文乱码问题解决方案
Jan 11 #Python
python实现实时视频流播放代码实例
Jan 11 #Python
python3下pygame如何实现显示中文
Jan 11 #Python
Pytorch 实现sobel算子的卷积操作详解
Jan 10 #Python
Pytorch保存模型用于测试和用于继续训练的区别详解
Jan 10 #Python
使用pytorch完成kaggle猫狗图像识别方式
Jan 10 #Python
You might like
整理的9个实用的PHP库简介和下载
2010/11/09 PHP
php缓存技术详细总结
2013/08/07 PHP
php mail to 配置详解
2014/01/16 PHP
js二级地域选择的实现方法
2013/06/17 Javascript
jQuery页面加载初始化常用的三种方法
2014/06/04 Javascript
Javascript中设置默认参数值示例
2014/09/11 Javascript
javascript 实现map集合
2015/04/03 Javascript
JavaScript中实现map功能代码分享
2015/06/11 Javascript
JavaScript 基础函数_深入剖析变量和作用域
2016/05/18 Javascript
JavaScript浏览器对象模型BOM(BrowserObjectModel)实例详解
2016/11/29 Javascript
node.js程序作为服务并在windows下开机自启动(用forever)
2017/03/29 Javascript
nodejs连接mysql数据库简单封装示例-mysql模块
2017/04/10 NodeJs
vue插件vue-resource的使用笔记(小结)
2017/08/04 Javascript
jQuery/JS监听input输入框值变化实例
2019/10/17 jQuery
详解Vue 单文件组件的三种写法
2020/02/19 Javascript
vue+koa2搭建mock数据环境的详细教程
2020/05/18 Javascript
js实现轮播图特效
2020/05/28 Javascript
[01:02:45]完美世界DOTA2联赛 LBZS vs Forest 第三场 11.07
2020/11/09 DOTA
python发送邮件示例(支持中文邮件标题)
2014/02/16 Python
win7 下搭建sublime的python开发环境的配置方法
2014/06/18 Python
今天 平安夜 Python 送你一顶圣诞帽 @微信官方
2017/12/25 Python
python ChainMap 合并字典的实现步骤
2019/06/11 Python
使用Python中的reduce()函数求积的实例
2019/06/28 Python
关于win10在tensorflow的安装及在pycharm中运行步骤详解
2020/03/16 Python
在keras中实现查看其训练loss值
2020/06/16 Python
一文读懂Python 枚举
2020/08/25 Python
Python的3种运行方式:命令行窗口、Python解释器、IDLE的实现
2020/10/10 Python
CSS3实现简易版的刮刮乐效果
2016/09/27 HTML / CSS
Myprotein葡萄牙官方网站:英国优质运动营养品牌
2016/09/12 全球购物
建设投标担保书
2014/05/13 职场文书
电焊工岗位工作职责
2014/07/09 职场文书
人事专员岗位说明书
2014/07/29 职场文书
2014年实习生工作总结
2014/11/27 职场文书
暑期工社会实践报告
2015/07/13 职场文书
公共场所卫生管理制度
2015/08/05 职场文书
爱岗敬业先进典型事迹材料(2016推荐版)
2016/02/26 职场文书