Django文件上传与下载(FileFlid)


Posted in Python onOctober 06, 2019

本文实例为大家分享了Django文件上传与下载的具体代码,供大家参考,具体内容如下

Django1.4

首先是上传:

#settings.py

MEDIA_ROOT = HERE#定义一个完整路径给 MEDIA_ROOT 以便让 Django在此处保存上传文件

MEDIA_URL = 'media'#定义 MEDIA_URL 作为该目录的公共 URL,要确保该目录对 WEB 服务器用户帐号是可写的

#model.py
 
#coding=utf-8
 
from django.db import models
class User(models.Model):
 username = models.CharField(max_length = 30)
 headImg = models.FileField(upload_to = 'update/%Y%m%d')
 
 def __unicode__(self):
 return self.username
#view.py
 
#coding=utf-8
 
from django.shortcuts import render_to_response
from django import forms
from django.http import HttpResponse
from django.template import RequestContext
from disk.models import User
 
# Create your views here.
class UserForm(forms.Form):
 username = forms.CharField()
 headImg = forms.FileField()
 
def register(request):
 if request.method == "POST":
 uf = UserForm(request.POST, request.FILES)
 if uf.is_valid():
  #获取表单信息
  username = uf.cleaned_data['username']
  headImg = uf.cleaned_data['headImg']
  #写入数据库
  user = User()
  user.username = username
  user.headImg = headImg
  user.save()
  return HttpResponse('upload ok!')
 else:
 uf = UserForm()
 ur= User.objects.order_by('id')
 return render_to_response('register.html',{'uf':uf}, context_instance=RequestContext(request))

前台使用{{uf.as_ul}}来展示form,如下:

Django文件上传与下载(FileFlid)

#register.html
 
<html>
<head>
 <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
 <title></title>
</head>
<a href="update/20140711/005zEPW4jw1eg3js7sil3g30500824al.gif" rel="external nofollow" >gao</a>
<body>
 <h1>register</h1>
 <form method="post" enctype="multipart/form-data" >
 {% csrf_token %}
 {{uf.as_ul}}
 <input type="submit" value="ok" />
 </form>
</body>
</html>

上传成功!

数据库中是这么个情况:

Django文件上传与下载(FileFlid)

接下来是下载

我的文件目录是:

Django文件上传与下载(FileFlid)

要想下载你首先要知道,你上传的东西到了哪个目录,涉及到两个地方:

MEDIA_ROOT = HERE

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python实现上传样本到virustotal并查询扫描信息的方法
Oct 05 Python
python关键字and和or用法实例
May 28 Python
深入浅析ImageMagick命令执行漏洞
Oct 11 Python
Sanic框架配置操作分析
Jul 17 Python
python Django的web开发实例(入门)
Jul 31 Python
python通过robert、sobel、Laplace算子实现图像边缘提取详解
Aug 21 Python
详解Python图像处理库Pillow常用使用方法
Sep 02 Python
浅析python,PyCharm,Anaconda三者之间的关系
Nov 27 Python
pytorch 实现删除tensor中的指定行列
Jan 13 Python
flask 框架操作MySQL数据库简单示例
Feb 02 Python
Python连接Hadoop数据中遇到的各种坑(汇总)
Apr 14 Python
python 字符串格式化的示例
Sep 21 Python
Django实现文件上传下载
Oct 06 #Python
python编写猜数字小游戏
Oct 06 #Python
python实现猜数字游戏
Mar 25 #Python
python实现机器人卡牌
Oct 06 #Python
Django实现文件上传下载功能
Oct 06 #Python
使用turtle绘制五角星、分形树
Oct 06 #Python
wxPython:python首选的GUI库实例分享
Oct 05 #Python
You might like
PHP怎样调用MSSQL的存储过程
2006/10/09 PHP
php计算数组不为空元素个数的方法
2014/01/27 PHP
thinkphp5 URL和路由的功能详解与实例
2017/12/26 PHP
javascript入门·图片对象(无刷新变换图片)\滚动图像
2007/10/01 Javascript
javascript特殊用法示例介绍
2013/11/29 Javascript
js添加绑定事件的方法
2016/05/15 Javascript
jQuery Chosen通用初始化
2017/03/07 Javascript
详解JavaScript对象的深浅复制
2017/03/30 Javascript
Vue2.0使用过程常见的一些问题总结学习
2017/04/10 Javascript
微信小程序 支付功能实现PHP实例详解
2017/05/12 Javascript
vue.js 左侧二级菜单显示与隐藏切换的实例代码
2017/05/23 Javascript
jQuery插件imgAreaSelect基础讲解
2017/05/26 jQuery
微信小程序列表渲染功能之列表下拉刷新及上拉加载的实现方法分析
2017/11/27 Javascript
JS原型继承四步曲及原型继承图一览
2017/11/28 Javascript
js最实用string(字符串)类型的使用及截取与拼接详解
2019/04/26 Javascript
JavaScript 实现下雪特效的示例代码
2020/09/09 Javascript
python UNIX_TIMESTAMP时间处理方法分析
2016/04/18 Python
Python字典简介以及用法详解
2016/11/15 Python
详解Python 2.6 升级至 Python 2.7 的实践心得
2017/04/27 Python
python批量替换多文件字符串问题详解
2018/04/22 Python
python 列表中[ ]中冒号‘:’的作用
2019/04/30 Python
python3获取url文件大小示例代码
2019/09/18 Python
python使用matplotlib绘制折线图的示例代码
2020/09/22 Python
Python Unittest原理及基本使用方法
2020/11/06 Python
Html5写一个简单的俄罗斯方块小游戏
2019/12/03 HTML / CSS
GOOD AMERICAN官网:为曲线性感而设计
2017/12/28 全球购物
英国手机壳购买网站:Case Hut
2019/04/11 全球购物
体育纪念品、亲笔签名的体育收藏品:Steiner Sports
2020/07/31 全球购物
PHP如何删除一个Cookie值
2012/11/15 面试题
汽车检测与维修个人求职信
2013/09/24 职场文书
考博专家推荐信
2014/05/10 职场文书
酒店管理毕业生自荐信
2014/05/25 职场文书
法学专业毕业实习自我鉴定2014
2014/09/27 职场文书
个人四风问题对照检查材料
2014/10/01 职场文书
演讲开头怎么书写?
2019/08/06 职场文书
python基础之文件处理知识总结
2021/05/23 Python