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入门篇之面向对象
Oct 20 Python
Python对象体系深入分析
Oct 28 Python
在Django中管理Users和Permissions以及Groups的方法
Jul 23 Python
Python中元组,列表,字典的区别
May 21 Python
Python编程argparse入门浅析
Feb 07 Python
pyqt5 实现 下拉菜单 + 打开文件的示例代码
Jun 20 Python
python自动发微信监控报警
Sep 06 Python
Python字符串格式化常用手段及注意事项
Jun 17 Python
python通用数据库操作工具 pydbclib的使用简介
Dec 21 Python
Pandas之缺失数据的实现
Jan 06 Python
Python项目实战之使用Django框架实现支付宝付款功能
Feb 23 Python
Python matplotlib安装以及实现简单曲线的绘制
Apr 26 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
2个自定义的PHP in_array 函数,解决大量数据判断in_array的效率问题
2014/04/08 PHP
如何使用php等比例缩放图片
2016/10/12 PHP
修改file按钮的默认样式实现代码
2013/04/23 Javascript
jQuery实现可用于博客的动态滑动菜单
2015/03/09 Javascript
jQuery获取同级元素的简单代码
2016/07/09 Javascript
微信小程序 开发工具快捷键整理
2016/10/31 Javascript
bootstrap table复杂操作代码
2016/11/01 Javascript
jQuery插件Echarts实现的双轴图效果示例【附demo源码下载】
2017/03/04 Javascript
Angular移动端页面input无法输入的解决方法
2017/11/14 Javascript
js防抖和节流的深入讲解
2018/12/06 Javascript
JS隐藏号码中间4位代码实例
2019/04/09 Javascript
用node撸一个监测复联4开售短信提醒的实现代码
2019/04/10 Javascript
element-ui 远程搜索组件el-select在项目中组件化的实现代码
2019/12/04 Javascript
JS+HTML实现自定义上传图片按钮并显示图片功能的方法分析
2020/02/12 Javascript
vue 使用localstorage实现面包屑的操作
2020/11/16 Javascript
python比较两个列表是否相等的方法
2015/07/28 Python
浅析AST抽象语法树及Python代码实现
2016/06/06 Python
Unicode和Python的中文处理
2017/03/19 Python
Python 12306抢火车票脚本 Python京东抢手机脚本
2018/02/06 Python
python之消除前缀重命名的方法
2018/10/21 Python
python pands实现execl转csv 并修改csv指定列的方法
2018/12/12 Python
python3+PyQt5 使用三种不同的简便项窗口部件显示数据的方法
2019/06/17 Python
使用pyecharts生成Echarts网页的实例
2019/08/12 Python
Python Websocket服务端通信的使用示例
2020/02/25 Python
Pytorch转keras的有效方法,以FlowNet为例讲解
2020/05/26 Python
Python devel安装失败问题解决方案
2020/06/09 Python
Application Cache未缓存文件无法访问无法加载问题
2014/05/31 HTML / CSS
荷兰在线体育用品商店:Avantisport.nl
2018/07/04 全球购物
新加坡最佳婴儿用品店:Mamahood.com.sg
2018/08/26 全球购物
镇党委书记群众路线整改措施思想汇报
2014/10/13 职场文书
成本会计岗位职责
2015/02/03 职场文书
男方家长婚礼答谢词
2015/09/29 职场文书
Python数据清洗工具之Numpy的基本操作
2021/04/22 Python
nginx中封禁ip和允许内网ip访问的实现示例
2022/03/17 Servers
vue组件冲突之引用另一个组件出现组件不显示的问题
2022/04/13 Vue.js
Java Redisson多策略注解限流
2022/09/23 Java/Android