file-upload - flask 中的文件上传错误

标签 file-upload flask

@app.route('/registerdriver', methods=['POST'])
def register_driver():
    fname = request.form['fname']
    lname = request.form['lname']
    email = request.form['email']
    mobno = request.form['mobno']
    password = request.form['password']

    file = request.files['driving_license']
    file.filename = mobno+"_"+fname

    filename = secure_filename(file.filename)
    file.save(os.path.join(app.config['UPLOAD_FOLDER'], filename))

上面是我用来保存文件的代码。但是在尝试保存文件时会弹出以下错误

flask.debughelpers.DebugFilesKeyError

flask.debughelpers.DebugFilesKeyError: You tried to access the file "driving_license" in the request.files dictionary but it does not exist. The mimetype for the request is "application/x-www-form-urlencoded" instead of "multipart/form-data" which means that no file contents were transmitted. To fix this error you should provide enctype="multipart/form-data" in your form.



浏览器改为传输一些文件名。

有人可以帮我弄这个吗

最佳答案

在您的 html 表单标签中包含

<form action="/path" method="post" enctype="multipart/form-data">
</form>

关于file-upload - flask 中的文件上传错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47679398/

相关文章:

javascript - AWS SDK JavaScript : how display upload progress of AWS. S3.putObject?

javascript - 一个网站与另一个网站的内容交替

python - 无法安装 MySQL-Python Mac Mavericks

python - 如何对 Flask-admin 字段执行验证

node.js - 如果我不上传文件,如何从 npm 的 multer 获取请求正文?

c# - 使用文件上传控件过滤文件类型

python - 如何在 AWS Elastic Beanstalk 上设置 HTTPS

python - 我无法使用 Python 将名称中包含空格的文件上传到 Google Cloud Storage。我究竟做错了什么?

.net - 将文件上传到 WCF 3.5 服务

file-upload - Liferay.Upload 组件用于多文件上传