首页 > 代码库 > django实现文件上传(最简单的方法)
django实现文件上传(最简单的方法)
html页面代码:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Title</title> </head> <body> <form enctype="multipart/form-data" action="/app01/upload/" method="POST"> {% csrf_token %} <input type="file" name="upload" /> <br/> <input type="submit" value="http://www.mamicode.com/上传"/> </form> </body> </html>
URL配置:
urlpatterns = [, url(r‘^upload/$‘, upload), ]
views.py配置:
def upload(request): if request.method == ‘GET‘: return render(request,‘upload.html‘) elif request.method == ‘POST‘: content =request.FILES.get("upload", None) if not content: return HttpResponse("没有上传内容") position = os.path.join(‘C:\\Users\\huyuan\\Desktop\\test\\upload‘,content.name) #获取上传文件的文件名,并将其存储到指定位置 storage = open(position,‘wb+‘) #打开存储文件 for chunk in content.chunks(): #分块写入文件 storage.write(chunk) storage.close() #写入完成后关闭文件 return HttpResponse("上传成功") #返回客户端信息 else: return HttpResponseRedirect("不支持的请求方法")
上传文件的常用方法和属性:
content.read():从文件中读取整个上传的数据,这个方法只适合小文件
content.chunks():按块写入文件,通过for循环可以将大文件按块写入到磁盘中
content.name:获取文件名,包括后缀
content.size:获取文件大小
本文出自 “自动化运维” 博客,请务必保留此出处http://hongchen99.blog.51cto.com/12534281/1954705
django实现文件上传(最简单的方法)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。