python 檔案上傳
阿新 • • 發佈:2020-12-01
python 小檔案上傳
def upload_view(request):
if request.method == 'GET':
return render(request,'upload.html')
file = request.FILES.get('asd') # 獲得檔案的物件
filename = file.name #獲得檔案的名字
content = file.read() # 將內容讀到記憶體
import os
BASE_DIR = os.path.join(os.getcwd(),'imgs')
if not os.path.exists(BASE_DIR):
os.makedirs(BASE_DIR)
with open(os.path.join(BASE_DIR,filename),'wb') as fw:
fw.write(content)
return HttpResponse('上傳成功')
大檔案上傳
def upload_view(request):
if request.method == 'GET':
return render(request,'upload.html')
import os
BASE_DIR = os.path.join(os.getcwd(), 'imgs')
if not os.path.exists(BASE_DIR):
os.makedirs(BASE_DIR)
file = request.FILES.get('asd') # 獲得檔案的物件
filename = file.name #獲得檔案的名字
with open(os.path.join(BASE_DIR,filename),'wb') as fw:
# 讀取大檔案 需要分段讀取(寫完之後再讀)
for chunk in file.chunks(2048):
fw.write(chunk)
return HttpResponse('上傳成功')