博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
基于django后端的html、js简单实现含中文csv文件下载
阅读量:4573 次
发布时间:2019-06-08

本文共 1382 字,大约阅读时间需要 4 分钟。

1.在django  views.py中使用HttpResponse

  views.py首行加上utf-8编码,将默认unicode编码变为utf-8

1 # -*- coding:utf-8 -*-

  下面是利用HttpResponse生成csv文件

1 response = HttpResponse(content_type='text/csv;charset=UTF-8')2 response.write(codecs.BOM_UTF8)  #加入BOM头才能在csv文件中添加中文,否则在excel中是乱码,此句必须加在下句的前面,不然没作用3 response['Content-Disposition'] = 'attachment; filename="systemInteriorLog.csv"'4 5 writer = csv.writer(response)6 writer.writerow(['时间', '日志ID', '动作', '状态', '类型', '内容'])

  从数据库中提取的数据中的中文可以用encode()方法编码,如下:

1 writer.writerow([ log.type.encode('utf-8'), log.description.encode('utf-8')])

 这里再说一下decode和encode方法的作用:

  decode()将其他编码转换为unicode编码,如decode('gb2313')是将gb2312编码的字符串转为unicode编码;
  encode()将unicode编码转换为其他编码,如encode('gb2312')是将unicode编码的字符串转为gb2312编码。

2.在url.py中配置views中方法的url路径

1 url(r'^download/csv', views.download_csv, name='dowmload_csv')    #分别为路径名、方法名

 

3.方法一  在html中直接链接到该url实现下载

1 

 

4.方法二  在js中实现下载

1 window.location.href='download/csv';

  

1 var url = "www.xxx.com/index.php";2 window.location.href = url + "?a=1&b=2";    3 //使用location.herf还可以实现向views中的request传值4 window.location.href='/download/interior/csv'+ '?a='+$scope.a+'&b='+$scope.b;

 

  在views方法中可以用GET得到传来的值

1 @http_method_required('GET')2 def get_interior_csv(request):3     get_a = request.GET.get('a')4     get_b = request.GET.get('b')

  之后再在html文件中调用所写的js方法即可实现文件下载

转载于:https://www.cnblogs.com/wq14061023/p/7296235.html

你可能感兴趣的文章
NDK使用之HelloWorld
查看>>
数据库字段数据类型对索引的影响
查看>>
perl6的介绍与下载编译安装
查看>>
mesos cluster
查看>>
转 Linux会话浅析(写得极好,表述清楚语言不硬)
查看>>
Altium Designer 中差分走线
查看>>
linux 解压缩命令
查看>>
GDUT校赛
查看>>
递归方程组解的渐进阶的求法——差分方程法
查看>>
(HDU)1076 --An Easy Task(简单任务)
查看>>
团队精神与集体主义的区别?
查看>>
Spring Boot 入门(Spring Cloud方向)
查看>>
仿淘宝商品图片放大镜效果(鼠标移动上去会出现放大的图片,并且可以移动)...
查看>>
AngularJS(九):路由
查看>>
Google chrome浏览器HTML5 Beta项目, 未来Web前瞻!
查看>>
GPS.NET 和 GeoFramework开源了
查看>>
汇编:采用址表的方法编写程序实现C程序的switch功能
查看>>
AtiveMQ初次连接的 http error:503 连接错误 Prolem accessing /.Reason : Service Unavailable...
查看>>
Lua1.1 Lua 的参考手册 (三)
查看>>
OFO和摩拜共享单车
查看>>