template html(模板文件):
<form enctype="multipart/form-data" method="POST" action="/address/upload/">
<input type="file" name="file" />
<br />
<input type="submit" value="上传文件" />
</form>
a、自定义上传(建议用自定义的)
def index(request):
if request.method == 'POST': obj = request.FILES.get('file')
import os
ppp = os.path.join('static','img',obj.name) f = open(ppp, 'wb')
for chunk in obj.chunks():
f.write(chunk)
f.close()
return HttpResponse(request,'上传成功')
# return render(request, 'file.html')
else:
return render(request,'index.html')
head_img = request.FILES.get('file')
print(head_img,"我是file")
tags = request.POST.get('tags', None) # obj = request.FILES.get('file')
import os
print(head_img.chunks(),"我是名字")
Statics = os.path.dirname(os.path.dirname(__file__))
user_img_file_path = os.path.join(Statics,"Statics",'Down_image',username)
print(user_img_file_path)
if not os.path.exists(user_img_file_path): os.mkdir(user_img_file_path) img_file_path = os.path.join(user_img_file_path,head_img.name) f = open(img_file_path, 'wb')
for chunk in head_img.chunks():
f.write(chunk)
f.close()
return HttpResponse('上传成功')
b、Form上传文件实例
class FileForm(forms.Form):
ExcelFile = forms.FileField()
form
from django.db import models class UploadFile(models.Model):
userid = models.CharField(max_length = )
file = models.FileField(upload_to = './upload/')
date = models.DateTimeField(auto_now_add=True)
models
def UploadFile(request):
uf = AssetForm.FileForm(request.POST,request.FILES)
if uf.is_valid():
upload = models.UploadFile()
upload.userid =
upload.file = uf.cleaned_data['ExcelFile']
upload.save() print upload.file