python 文件上传
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('上传成功')