django实现分片上传文件
目标:利用django实现上传文件功能
1,先设置路由系统
urls.py
from django.conf.urls import url,include
from django.contrib import admin
from app01 import views urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^upload/$', views.upload), ]
2,配置html模板文件(前端页面展示)
templates/upload.html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<form action="/upload/" method="post" enctype="multipart/form-data">
<p><input type="file" name="f1"></p>
<p><input type="text" name="hostname"></p>
<input type="submit" value="upload">
</form>
</body>
</html>
3,开始写上传逻辑
views.py
#_*_ coding:utf-8 -*-
from django.shortcuts import render,HttpResponse
from django.views.generic.list import ListView def index(request):
return HttpResponse("haha") def upload(request):
if request.method == "POST": #判断接收的值是否为POST
inp_files = request.FILES #上传文件的接收方式应该是request.FILES
file_obj = inp_files.get('f1') #通过get方法获取upload.html页面提交过来的文件
f = open(file_obj.name,'wb') #将客户端上传的文件保存在服务器上,一定要用wb二进制方式写入,否则文件会乱码
for line in file_obj.chunks(): #通过chunks分片上传存储在服务器内存中,以64k为一组,循环写入到服务器中
f.write(line)
f.close() return render(request,'upload.html') #将处理好的结果通过render方式传给upload.html进行渲染
4,上传功能全部完成,比较简单,我们来进行验证

上传本地一个png的图片,然后点击upload提交
点击提交后,在服务器上看到了刚刚上传的文件“django流程图”

通过Django实现分片上传文件成功。
django实现分片上传文件的更多相关文章
- Django之用户上传文件的参数配置
Django之用户上传文件的参数配置 models.py文件 class Xxoo(models.Model): title = models.CharField(max_length=128) # ...
- node.js分片上传文件
前端 : <html> <head> <title>分片上传文件</title> </head> <body> <div ...
- Django session cookie 上传文件、详解
session 在这里先说session 配置URL from django.conf.urls import patterns, include, url from django.contrib i ...
- C#实现分片上传文件
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.IO ...
- django + dropzone.js 上传文件
1.dropzone.js http://www.dropzonejs.com/ dropzone.js是一个可预览\可定制化的文件拖拽上传,实现AJAX异步上传文件的工具 2.dropzone.js ...
- 1. Django系列之Django与ajax上传文件
html代码如下: <div class="form-group"> <label for="exampleInputFile">附件上 ...
- django Form组件 上传文件
上传文件 注意:FORM表单提交文件要有一个参数enctype="multipart/form-data" 普通上传: urls: url(r'^f1/',views.f1), u ...
- django 自定义存储上传文件的文件名
一.需求: Django实现自定义文件名存储文件 使文件名看起来统一 避免收到中文文件导致传输.存储等问题 相同的文件也需要使用不同的文件名 二.实现思路: 思路: 生成14位随机字母加数字.后10位 ...
- (转)django上传文件
本文转自:http://www.cnblogs.com/linjiqin/p/3731751.html 另: 本文对原文做了适当修改 更为详细的介绍可以参考官方文档. emplate html(模板 ...
随机推荐
- django celery的分布式异步之路(一) 起步
如果你看完本文还有兴趣的话,可以看看进阶篇:http://www.cnblogs.com/kangoroo/p/7300433.html 设想你遇到如下场景: 1)高并发 2)请求的执行相当消耗机器资 ...
- 使用keepalived使用主备热备份功能
图: 配置文件: 主服务器的配置如下: global_defs { router_id NodeA}vrrp_instance VI_1 { state MASTER #设置为主服务器 interfa ...
- 全面解读JavaScript入门到进阶,100%基础知识掌握!
一.JavaScript 简介 1.JavaScript 是 Web 的编程语言,是前端开发必须掌握的三门语言之一,即: HTML 定义了网页的内容 CSS 描述了网页的布局 JavaS ...
- Admob - Google广告接入
前言 现在免费小游戏及应用的主要收入渠道就是通过接入广告.而Google的Admob适用于全球范围内的广告接入,文档方面及后台管理也是较为完善,接入还是比较便捷的. 不过Google目前还在墙外,虽然 ...
- TsBatis 预览
前言 在发布了 mybatis-dynamic-query之后感觉基本功能稳定了,而且现在在工作项目开发效率大大提高,而且非常易于维护. 最近准备带几个小朋友以前用typescript 打通前后端,当 ...
- 【NOIP2015提高组】 Day2 T3 运输计划
题目描述 L 国有 n 个星球,还有 n-1 条双向航道,每条航道建立在两个星球之间,这 n-1 条航道连通了 L 国的所有星球. 小 P 掌管一家物流公司,该公司有很多个运输计划,每个运输计划形如: ...
- 【ASP.NET MVC 学习笔记】- 11 Controller和Action(2)
本文参考:http://www.cnblogs.com/willick/p/3331513.html 1.MVC一个请求的发出至action返回结果的流程图如下: 重点是Controller Fact ...
- LeetCode 170. Two Sum III - Data structure design (两数之和之三 - 数据结构设计)$
Design and implement a TwoSum class. It should support the following operations: add and find. add - ...
- Windows7 64位环境下Python-igraph环境配置
本文为作者原创,转载请注明出处(http://www.cnblogs.com/mar-q/)by 负赑屃 其实配置很简单,但是网上的几个都不咋靠谱.而且我本身对这个软件挺感兴趣.igraph是一个网络 ...
- 如何在Pypi上发表自己的Python库
背景 最近兴趣使然写了几个Python库,也发布到了Pypi上,虽然没什么人下载,但自己在其他机器上用着也会很方便.这里我向大家介绍一下如何在Pypi上发表自己的Python库. 准备 注册账号 很显 ...