django 上传文件

页面代码:

<form id="uploadForm" action="" method="POST" enctype="multipart/form-data">
{% csrf_token%}
    <input type="file" id="eki_file" name="eki_file" value="{{eki_file}}"/>
    <input type="file" id="emi_file" name="emi_file" value="{{emi_file}}"/>
    <input type="file" id="eri_file" name="eri_file" value="{{eri_file}}"/>
</form>

注:表单必须存在enctype="multipart/form-data"属性,并且method="POST",否则request.FILES中没有数据

视图中的代码:(以上传eki文件为例)

UPLOAD_DIR = "/home/"
.....
file = request.FILES['eki_file']
if file:
    dest = open(UPLOAD_DIR + file.name,'wb+')
    for chunk in file.chunks():
        dest.write(chunk)
    dest.close()
.....

这样通过页面预览的文件就上传到了UPLOAD_DIR目录下了。

如果UPLOAD_DIR目录下存在同名的文件,则被上传的文件覆盖。

原文地址:https://www.cnblogs.com/codinggirl/p/2995365.html