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学习笔记 下载
Feb 10 Python
python通过索引遍历列表的方法
May 04 Python
Python删除空文件和空文件夹的方法
Jul 14 Python
完美解决安装完tensorflow后pip无法使用的问题
Jun 11 Python
Python中numpy模块常见用法demo实例小结
Mar 16 Python
python实现视频读取和转化图片
Dec 10 Python
Python3常见函数range()用法详解
Dec 30 Python
Python Selenium安装及环境配置的实现
Mar 17 Python
Matplotlib.pyplot 三维绘图的实现示例
Jul 28 Python
基于Django快速集成Echarts代码示例
Dec 01 Python
Python自动化测试PO模型封装过程详解
Jun 22 Python
python面向对象版学生信息管理系统
Jun 24 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
松下Panasonic RF-B65电路分析
2021/03/02 无线电
VFP与其他应用程序的集成
2006/10/09 PHP
php替换超长文本中的特殊字符的函数代码
2012/05/22 PHP
在laravel框架中实现封装公共方法全局调用
2019/10/14 PHP
JavaScript实现动态增加文件域表单
2009/02/12 Javascript
使用Firebug对js进行断点调试的图文方法
2011/04/02 Javascript
jquery对表单操作2
2011/04/06 Javascript
解读JavaScript代码 var ie = !-[1,] 最短的IE判定代码
2011/05/28 Javascript
解析Javascript中难以理解的11个问题
2013/12/09 Javascript
JavaScript模块随意拖动示例代码
2014/05/27 Javascript
JS实现点击颜色块切换指定区域背景颜色的方法
2015/02/25 Javascript
原生JS实现旋转木马式图片轮播插件
2016/04/25 Javascript
JS调用某段SQL语句的方法
2016/10/20 Javascript
微信小程序加载更多 点击查看更多
2016/11/29 Javascript
bootstrap datetimepicker日期插件超详细使用方法介绍
2017/02/23 Javascript
在react-router4中进行代码拆分的方法(基于webpack)
2018/03/08 Javascript
vue基于Echarts的拖拽数据可视化功能实现
2020/12/04 Vue.js
[17:13]DOTA2 HEROS教学视频教你分分钟做大人-斯拉克
2014/06/13 DOTA
使用Python的Twisted框架编写简单的网络客户端
2015/04/16 Python
Python获取某一天是星期几的方法示例
2017/01/17 Python
Python虚拟环境virtualenv的安装与使用详解
2017/05/28 Python
Python使用Matplotlib实现雨点图动画效果的方法
2017/12/23 Python
Python基于win32ui模块创建弹出式菜单示例
2018/05/09 Python
基于CSS3实现的几个小loading效果
2018/09/27 HTML / CSS
英国乐购杂货:Tesco Groceries
2018/11/29 全球购物
工程造价专业大专生求职信
2013/10/06 职场文书
毕业生就业自荐信
2013/12/04 职场文书
本科毕业生求职自荐信
2014/02/03 职场文书
中国梦演讲稿教师篇
2014/04/23 职场文书
优秀学生评语大全
2014/04/25 职场文书
授权委托书(完整版)
2014/09/10 职场文书
临床医学生职业规划书范文
2014/10/25 职场文书
召开会议通知范文
2015/04/15 职场文书
辛亥革命观后感
2015/06/02 职场文书
亲情作文之母爱
2019/09/25 职场文书
golang 实用库gotable的具体使用
2021/07/01 Golang