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(十七)文件上传的更多相关文章

  1. python Django之文件上传

    python Django之文件上传 使用Django框架进行文件上传共分为俩种方式 一.方式一 通过form表单进行文件上传 #=================================== ...

  2. day56:django:csrf_token&文件上传

    目录 1.csrf介绍 2.django实现csrf_token认证 3.django实现文件上传 csrf介绍 什么是csrf? csrf:跨站请求伪造.攻击者通过HTTP请求将数据传送到服务器,从 ...

  3. 框架----Django之文件上传

    一.文件上传 1. 浏览器访问 http://127.0.0.1:8000/f1/ http://127.0.0.1:8000/f2/ 2. urls from django.conf.urls im ...

  4. Django的文件上传以及预览、存储

    思路: 文件上传通过前端的input标签,input设置display:none属性. 内容显示需要让前端通过<img>标签读取图片内容,可以通过<label>标签连接< ...

  5. Django实现文件上传功能

    文件上传 关注公众号"轻松学编程"了解更多. 1.创建上传文件夹 在static文件夹下创建uploads用于存储接收上传的文件 在settings中配置,MEDIA_ROOT=o ...

  6. Django普通文件上传

    前端代码: <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF ...

  7. django 的文件上传

    template html(模板文件): <form enctype="multipart/form-data" method="POST" action ...

  8. Django处理文件上传File Uploads

    HttpRequest.FILES 表单上传的文件对象存储在类字典对象request.FILES中,表单格式需为multipart/form-data <form enctype="m ...

  9. Django之文件上传

    一.form表单上传文件 注意: 1.form上需要加enctype="multipart/form-data" 2.form提交的地址需要以/结尾 def form_file(r ...

随机推荐

  1. Form组件归类

    一.Form类 创建Form类时,主要涉及到 [字段] 和 [插件],字段用于对用户请求数据的验证,插件用于自动生成HTML; 1.Django内置字段如下: 1 Field 2 required=T ...

  2. python爬虫之git的使用(github的使用)

    上面博文中我们简单的了解了一下基本的git操作,但是我们都是将代码放到了本地的仓库里面,但是如果我们是一个团队开发的话,肯定不会放到每个人的本地,必须得有个统一的地方存放代码,国外的大家都在使用git ...

  3. django rest framework批量上传图片及导入字段

    一.项目需求 批量上传图片,然后批量导入(使用excel)每个图片对应的属性(属性共十个,即对应十个字段,其中外键三个). 二.问题 一次可能上传成百上千张图片和对应字段,原来数据库的设计我将图片和对 ...

  4. centOS 开机自启动自己的脚本

    centOS 开机自启动自己的脚本 1. 自己脚本 myservice 如下: #!/bin/bash # chkconfig: # description: myservice .... echo ...

  5. Gitlab中README.MD编写格式模板

    README.MD文件 格式: 源码: # Hbase组件 ## Maven依赖 ``` <dependency> <groupId>catf</groupId> ...

  6. Eclipse配置C++时的三个关键环境变量

    ECLIPSE下载很简单,然后装上MinGW,安装就完成了,关键是要配置三个环境变量 include——C:\MinGW\include lib——C:\MinGW\lib path——C:\MinG ...

  7. SpringMvc父子容器

      使用监听器listener来加载spring的配置文件:如下 <context-param> <param-name>contextConfigLocation</p ...

  8. js自动运行

    叹号后面跟函数!function 和加号后面跟函数+function 都是跟(function(){})();这个函数是一个意思,都是告诉浏览器自动运行这个匿名函数的

  9. centos 7创建ss服务(方式二)

    一:安装pip yum install python-pip 如果没有python包则执行命令:yum -y install epel-release: 二:安装SS pip install shad ...

  10. DrawableAnimation小练习

    DrawableAnimation,也就是帧动画,将图片一张张显示出来,从而形成动画的效果 先在项目文件夹下新建一个目录drawable,然后在里面新建一个xml文件,自定义文件名,我的叫my_ani ...