Django(十七)文件上传
http://www.cnblogs.com/wupeiqi/articles/5703697.html
- 文件上传
- 普通上传
- 自定义页面上传按钮
- 基于Form做上传
- Ajax上传文件?????
一,上传文件
- from django.shortcuts import render,redirect, HttpResponse
- # Create your views here.
- def update(request):
- if request.method == 'GET':
- return render(request, 'update.html')
- else:
- username = request.POST.get('username')
- img = request.FILES.get('img')
- print(img)
- print(username)
- file_name = img.name
- file_size = img.size
- print(file_name, file_size)
- f = open(img.name, 'wb')
- for line in img.chunks():
- f.write(line)
- f.close()
- return HttpResponse("ok")
- <!DOCTYPE html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <title>Title</title>
- </head>
- <body>
- <form action="/update/" method="post" enctype="multipart/form-data">
- {% csrf_token %}
- <input type="text" name="username">
- <div style="position: relative">
- <a href="">上传</a>
- <input type="file" name="img" style="opacity:0; position: absolute;left: 0;top: 0;">
- </div>
- <input type="submit" value="提交" />
- </form>
- </body>
- </html>
基于Form上传
- <!DOCTYPE html>
- <html lang="en">
- <head>
- <meta charset="UTF-8">
- <title>Title</title>
- </head>
- <body>
- <form action="/update/" method="post" enctype="multipart/form-data">
- {% csrf_token %}
- {{ obj.user }}
- {{ obj.img }}
- <input type="submit" value="提交" />
- </form>
- </body>
- </html>
- from django.shortcuts import render,redirect, HttpResponse
- # Create your views here.
- from django import forms
- from django.forms import fields
- class Upload(forms.Form):
- user = fields.CharField()
- img = fields.FileField()
- def update(request):
- if request.method == 'GET':
- obj = Upload()
- return render(request, 'update.html',{'obj':obj})
- else:
- obj = Upload(request.POST, request.FILES)
- if obj.is_valid():
- username = obj.cleaned_data['user']
- img = obj.cleaned_data['img']
- print(img)
- print(username)
- file_name = img.name
- file_size = img.size
- print(file_name, file_size)
- f = open(img.name, 'wb')
- for line in img.chunks():
- f.write(line)
- f.close()
- return HttpResponse("ok")
Django(十七)文件上传的更多相关文章
- python Django之文件上传
python Django之文件上传 使用Django框架进行文件上传共分为俩种方式 一.方式一 通过form表单进行文件上传 #=================================== ...
- day56:django:csrf_token&文件上传
目录 1.csrf介绍 2.django实现csrf_token认证 3.django实现文件上传 csrf介绍 什么是csrf? csrf:跨站请求伪造.攻击者通过HTTP请求将数据传送到服务器,从 ...
- 框架----Django之文件上传
一.文件上传 1. 浏览器访问 http://127.0.0.1:8000/f1/ http://127.0.0.1:8000/f2/ 2. urls from django.conf.urls im ...
- Django的文件上传以及预览、存储
思路: 文件上传通过前端的input标签,input设置display:none属性. 内容显示需要让前端通过<img>标签读取图片内容,可以通过<label>标签连接< ...
- Django实现文件上传功能
文件上传 关注公众号"轻松学编程"了解更多. 1.创建上传文件夹 在static文件夹下创建uploads用于存储接收上传的文件 在settings中配置,MEDIA_ROOT=o ...
- Django普通文件上传
前端代码: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF ...
- django 的文件上传
template html(模板文件): <form enctype="multipart/form-data" method="POST" action ...
- Django处理文件上传File Uploads
HttpRequest.FILES 表单上传的文件对象存储在类字典对象request.FILES中,表单格式需为multipart/form-data <form enctype="m ...
- Django之文件上传
一.form表单上传文件 注意: 1.form上需要加enctype="multipart/form-data" 2.form提交的地址需要以/结尾 def form_file(r ...
随机推荐
- Leetcode SingleNumber I & II & III 136/137/260
SingleNumber I: 题目链接:https://leetcode-cn.com/problems/single-number/ 题意: 给定一个非空整数数组,除了某个元素只出现一次以外,其余 ...
- Django--CRM--菜单展示, 删除合并, 权限展示
一 . 菜单展示 二 . 合并删除 我们可以把所有的删除都合并成一个函数这样就会减少很多的代码. 思路: 在url里面需要传两个参数,一个是要删的id 一个是名字 三 .权限展示 我们要实现两个功能 ...
- ajax查看详细返回信息
查看详细成功返回信息: success : function(data, textStatus, jqXHR) { console.log(data); console.log(textStatus) ...
- delphi 子窗体只能最小化不能关闭的解决方案
cnpack下载地址:http://www.cnpack.org/showdetail.php?id=726&lang=zh-cn 时候创建的子窗体不能关闭,点关闭按钮时子窗体最小化了. 出现 ...
- java 环境变量配置 详解!
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- 对mysql 单表备份
#!bin/bash cd C:\Program Files\MySQL\MySQL Server 5.5\bin set "Ymd=%date:~,4%%date:~5,2%%date:~ ...
- jquery获取select选择的文本与值
jquery获取select选择的文本与值获取select :获取select 选中的 text : $("#ddlregtype").find("option:s ...
- 【数学建模】day09-聚类分析
0. 多元分析之聚类分析. 聚类分析是一种定量方法,从数据的角度,对样本或指标进行分类,进而进行更好的分析. 分为Q型聚类和R型聚类. 1. Q型聚类分析是对样本进行分类.有若干样本,我们把这些样本分 ...
- chrome实用快捷键速记
标签页和窗口快捷键 操作 快捷键 打开新窗口 Ctrl + n 无痕模式下打开新窗口 Ctrl + Shift + n 打开新的标签页,并跳转到该标签页 Ctrl + t 重新打开最后关闭的标签页,并 ...
- ZIP压缩包加密破解
python多线程破解zip文件,废话不多说直接上代码 # -*- coding: UTF-8 -*- #使用多线程和接受参数的形式去破解指定的zip文件 #python3 zip_file_cack ...