广告
返回顶部
首页 > 资讯 > 后端开发 > Python >django下载excel,使用djan
  • 269
分享到

django下载excel,使用djan

djangoexceldjan 2023-01-30 22:01:49 269人浏览 八月长安

Python 官方文档:入门教程 => 点击学习

摘要

  由于目前的资料多是使用pandas或xlwt库实现的。其实没有那么的麻烦,因为Django有相对应的插件djanGo-excel。   该插件是依赖于pyexcel库写的。不过,不用专门安装pyexcel库,因为在安装django-

  由于目前的资料多是使用pandas或xlwt库实现的。其实没有那么的麻烦,因为Django有相对应的插件djanGo-excel

  该插件是依赖于pyexcel库写的。不过,不用专门安装pyexcel库,因为在安装django-excel时会自动将pyexcel装上。由于pyexcel是一个大库,且在使用django-excel时不用考虑pyexcel的使用方法,所以就不再此介绍太多了。在此,还是要多说一句,pyexcel的功能也是很强大的,可以实现数据的可视化,目前已开发出了与flask、django等WEB框架的对应插件,比如今天介绍的django-excel。

  django-excel是一款支持上传和下载excel文件的插件,并可以将excel文件以网页的形式展现出来,也可以将数据存入数据库。由于,笔者也是刚接触该插件,而且开发需求目前仅为下载功能,所以本篇只介绍其下载的功能。(注:实现下载功能,部署的服务器无需安装office)

1、 安装

  pip install django-excel

  安装时会自动安装pyexcel-io、pyexcel、pyexcel-webio

2、 支持django的版本

  目前已支持到django2.1.1版本。所以,使用目前django最新版的开发者也不用担心了,因为它支持。

3、 实现下载

  该插件支持的数据格式很多,array(二维数组)、字典、数据库的表(单张或多张)、django的ORM查询结果(query sQt)等等。可以生成的文件类型:csv、tsv、csvz、tsvz、xls、xlsx、xlsm、ods。

包名

支持的文件格式

依赖

Python版本

pyexcel-io

csv, csvz , tsv, tsvz 

 

2.6, 2.7, 3.3, 3.4, 3.5, 3.6 pypy

pyexcel-xls

xls, xlsx(只读), xlsm(只读)

xlrd, xlwt

同上

pyexcel-xlsx

xlsx

openpyxl

同上

pyexcel-ods3

ods

pyexcel-ezodf, lxml

2.6, 2.7, 3.3, 3.4 3.5, 3.6

pyexcel-ods

ods

odfpy

同上

 

 

 

 

 

 

 

 

 

上表是生成对应文件格式所需安装的包。

  如果是要使用二维数组生成excel文件,则需return django_excel.make_response_from_array(二维数组名, 生成的文件类型, status=200)。二维数组每一行代表Excel中相应的行。

  如果想要使用字典生成excel文件,则需return django_excel.make_response_from_dict(字典名, 文件类型, status=200)。键名为列名,键值为数据。

  如果想要使用数据库的表(单张)生成excel文件,则需return django_excel.make_response_from_a_table(表名, 文件类型, status=200)

  如果想要使用数据库的表(多张)生成excel文件,则需return django_excel.make_response_from_tables(表名列表, 文件类型status=200)

  如果想要使用查询集合生成excel文件,则需return django_excel.make_response_from_query_sets(查询集合名, 所需列对应字段(列表类型),文件类型, status=200)。所需列对应字段的列表里的顺序为Excel列名的顺序,且列表里的元素必须为model里的变量名。

  所有函数的通用参数包含file_name 和sheet_name,分别为文件名和Excel的工作薄名。

  注意,不论是数据库表还是查询集合,都不能包含外键否则会报错,而且只能通过页面的跳转实现下载,不能通过ajax请求,否则不会下载。

eg:

models.py

class django_test_1(models.Model):
    abc = models.CharField(max_length=20,db_column='测试')

 

views.py

1 import django_excel as excel
2 
3 def download_excel(request):
4 
5     data_excel =django_test_1.objects.all()
6 
7     column_names = ["abc"]
8 
9     return excel.make_response_from_query_sets(data_excel,column_names, "xlsx",status = 200 ,sheet_name='测试',file_name='测试文件')

 

以上仅为笔者目前的见解,没有写全。如果感兴趣可以直接阅读其官方文档:Http://django.pyexcel.org/en/latest/

--结束END--

本文标题: django下载excel,使用djan

本文链接: https://www.lsjlt.com/news/179823.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • django下载excel,使用djan
      由于目前的资料多是使用pandas或xlwt库实现的。其实没有那么的麻烦,因为django有相对应的插件django-excel。   该插件是依赖于pyexcel库写的。不过,不用专门安装pyexcel库,因为在安装django-...
    99+
    2023-01-30
    django excel djan
  • 利用Python+Excel制作一个视频下载器
    说起Excel,那绝对是数据处理领域王者般的存在。 而作为网红语言Python,在数据领域也是被广泛使用。 其中Python的第三方库-xlwings,一个Python和Excel的...
    99+
    2022-11-11
  • 利用Java怎么上传与下载Excel表格
    这篇文章给大家介绍利用Java怎么上传与下载Excel表格,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。Excel表格文件的上传和下载,java中涉及到文件肯定会有io流的知识。而excel文件就要涉及到poi技术,而...
    99+
    2023-05-31
    java excel ava
  • django 使用框架下auth.mod
    需要改动三个地方: 1.models.py   创建模型User,并继承原模型类AbstraUser(在此处我增加了一个新的字段手机号) from django.db import models # Create your model...
    99+
    2023-01-31
    框架 django mod
  • vue中怎么使用xlsx插件下载内容默认居中的excel
    这篇文章主要介绍“vue中怎么使用xlsx插件下载内容默认居中的excel”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“vue中怎么使用xlsx插件下载内容默认居中...
    99+
    2022-10-19
  • 一次在vue中使用post进行excel表下载的实战记录
    目录一、一般大家下载excel都是使用get方法,直接点击下载二、vue用post下载excel表三、下面是具体的实现3.1 post的封装3.2 请求的方法3.3 download...
    99+
    2022-11-13
  • 怎么在vue中使用django实现一个文件下载功能
    这篇文章将为大家详细讲解有关怎么在vue中使用django实现一个文件下载功能,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。一、概述在项目中,点击下载按钮,就可以下载文件。传统的下载链接一般...
    99+
    2023-06-14
  • C#使用NPOI设置Excel下拉选项
    本文实例为大家分享了C#使用NPOI设置Excel下拉选项的具体代码,供大家参考,具体内容如下 最近在做一个导出模板的功能,需要限制用户的某些单元格输入的内容。 期望达到的效果:单元...
    99+
    2022-11-13
  • 使用Python下载工具you-get下
    You-Get是一个基于 Python 3 的下载工具。使用 You-Get 可以很轻松的下载到网络上的视频、图片及音乐。 使用you-get下载媒体文件 1.安装Python(步骤详情见另一篇文章) 2.安装you-get       ...
    99+
    2023-01-30
    下载工具 Python
  • 下载git如何使用
    随着软件开发的不断发展,版本控制已经成为一个不可或缺的工具。Git是当前最受欢迎的分布式版本控制系统之一,它不仅适用于大型团队,也适用于个人项目。在本文中,我们将介绍如何下载Git并使用它来进行版本控制。第一步:下载GitGit是一个免费的...
    99+
    2023-10-22
  • Excel中VLOOKUP函数的应用方法及vlookup函数实例的下载
    VLOOKUP函数是Excel中常用的查找函数,用于在一个区域(通常是一个表格)中查找某个值,并返回该值所在行的其他数据。VLOOK...
    99+
    2023-09-16
    excel
  • C#如何使用NPOI设置Excel下拉选项
    这篇文章给大家分享的是有关C#如何使用NPOI设置Excel下拉选项的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。第一种· 直接设置下拉值,不超过255个字符(优点:逻辑简单 ;缺点:有字符...
    99+
    2023-06-29
  • excel下拉菜单使用问题怎么解决
    本篇内容主要讲解“excel下拉菜单使用问题怎么解决”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“excel下拉菜单使用问题怎么解决”吧!excel下拉菜单使用教程:首先需要打开可编辑的exce...
    99+
    2023-06-30
  • Memcached下载安装和使用
    一、简介:Memcached 是一个高性能的分布式,基于内存的key-value存储的对象缓存系统(并不是一个数据库),用于动态Web应用以减轻数据库负载。 二、下载和安装 1、下载和安装Memcached服务端 1.1、下载 Window...
    99+
    2023-08-31
    memcached php 数据库
  • 使用wget下载https链接
    使用下面的命令行: wget -r -np -nd --accept=gz --no-check-certificate https://www.xxx.com/dir/ --http-user=username -...
    99+
    2022-06-03
    Linux wget 远程下载
  • 使用Apache HttpClient下载文件
    使用Apache HttpClient下载文件的步骤如下:1. 首先,导入Apache HttpClient的依赖包。如果使用Mav...
    99+
    2023-09-26
    Apache
  • 【JavaWeb】Tomcat的下载及使用
    文章目录 1.前言2.Tomcat 的下载3.启动Tomcat4.修改Tomcat 的默认端口号5.关闭Tomcat6.部署项目 1.前言 Tomcat是Apache软件基金会的一个核心项...
    99+
    2023-09-01
    tomcat servlet java
  • 在java后台使用Apache poi 实现生成一个excel文档并提供前台下载
    本篇文章为大家展示了在java后台使用Apache poi 实现生成一个excel文档并提供前台下载,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。step1:创建xls格式的模板表头含有我的甲方信息...
    99+
    2023-05-31
    apache apache poi excel
  • Windows下MySQL下载安装、配置与使用
    用过MySQL之后,不论容量的话,发现比其他两个(sql server 、oracle)好用的多,一下子就喜欢上了。下面给那些还不知道怎么弄的童鞋们写下具体的方法步骤。 (我这个写得有点太详细了,甚至有些繁...
    99+
    2022-10-18
  • 如何使用ByteArrayOutputStream下载文件
    目录使用ByteArrayOutputStream下载文件使用POI导出数据,然后将其下载使用ByteArrayOutputStream解决IO乱码说下经过小结一下使用ByteArr...
    99+
    2022-11-12
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作