uploadfile (以上传图片为例子)
一、图片上传
文件数据存储在request.FILES属性中
form表单上传文件需要添加enctype=’multipart/form-data’
文件上传必须使用POST请求方式
存储:
在static文件夹下创建uploadfiles用于存储和接收上传的文件
在settings中配置,MEDIA_ROOT=os.path.join(BASE_DIR, r’static/uploadfiles’)
在开发中通常是存储的时候,我们要存储到关联用户的表中
<!--模板中代码-->
<form method='post' action='xxx' enctype='multipart/form-data'>
{% csrf_token %}
<input type='file' name='img'>
<input type='submit' value='上传'>
</form>
#views.py中的代码
def saveFile(request):
if request.method == 'POST':
imgFile = request.FILES['img']
filepath = os.path.join(settings.MEDIA_ROOT, imgFile.name)
with open(filepath, 'wb') as f:
for img in imgFile.chunks(): #分包写入
f.write(img)
return HttpResponse('上传成功')