91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Django中怎么實現文件上傳與下載功能

發布時間:2021-07-20 16:14:03 來源:億速云 閱讀:140 作者:Leah 欄目:開發技術

Django中怎么實現文件上傳與下載功能,相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。

首先是上傳:

#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中怎么實現文件上傳與下載功能

#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>
 <h2>register</h2>
 <form method="post" enctype="multipart/form-data" >
 {% csrf_token %}
 {{uf.as_ul}}
 <input type="submit" value="ok" />
 </form>
</body>
</html>

上傳成功!

數據庫中是這么個情況:

Django中怎么實現文件上傳與下載功能

接下來是下載

我的文件目錄是:

Django中怎么實現文件上傳與下載功能

要想下載你首先要知道,你上傳的東西到了哪個目錄,涉及到兩個地方:

MEDIA_ROOT = HERE

看完上述內容,你們掌握Django中怎么實現文件上傳與下載功能的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

正宁县| 巨野县| 多伦县| 南华县| 双城市| 黑龙江省| 安庆市| 安达市| 辽阳市| 隆德县| 隆回县| 古交市| 丽江市| 玉山县| 白河县| 涟源市| 科技| 将乐县| 绵竹市| 阳江市| 剑川县| 寿光市| 绍兴县| 雷山县| 教育| 龙江县| 浙江省| 上蔡县| 霍山县| 牡丹江市| 宝山区| 静乐县| 江都市| 读书| 镇沅| 米泉市| 金昌市| 三穗县| 淳安县| 丰宁| 滕州市|