首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Flask-uploads -我一直收到UploadNotAllowed错误

Flask-uploads -我一直收到UploadNotAllowed错误
EN

Stack Overflow用户
提问于 2017-09-19 16:43:24
回答 1查看 405关注 0票数 0

我是python和编程的新手。

即使我将表单域验证器设置为Optional(),我仍然得到UploadNotAllowed错误。我的目标是允许用户选择上传或不上传头像。当选择要上传的镜像时,所有配置都工作正常。任何帮助都将不胜感激。

以下是表单域:

代码语言:javascript
复制
class SettingsForm(FlaskForm):
        profile_pic = FileField('Profile Picture', validators= [Optional(), FileAllowed(images, 'Only images are allowed here')])

这是我的views.py:

代码语言:javascript
复制
if form.validate_on_submit():
    filename = images.save(request.files['profile_pic'])
    current_user.profile_pic = images.url(filename)
EN

回答 1

Stack Overflow用户

发布于 2017-09-19 16:55:45

这是文档中略有编辑的版本(here)。这也会提醒你html文件应该包含什么内容。

代码语言:javascript
复制
from flask_wtf import FlaskForm
from flask_wtf.file import FileField, FileRequired
from werkzeug.utils import secure_filename

class PhotoForm(FlaskForm):
    photo = FileField(validators=[Optional(), FileAllowed(images, 'Only images are allowed here')])

@app.route('/upload', methods=['GET', 'POST'])
def upload():
    if form.validate_on_submit():
        f = form.photo.data
        filename = secure_filename(f.filename)
        #you can replace this with wherever you want to save your images            
        f.save(os.path.join(
                app.instance_path, 'photos', filename
            ))
        current_user.profile_pic = images.url(filename)
        return redirect(url_for('index'))

    return render_template('upload.html', form=form)
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/46295803

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档