如何预览要在烧瓶中上传的图像?

时间:2015-10-07 20:58:25

标签: python flask upload

我正在尝试预览要上传的图片。我正在使用此处显示的上传表单

class Upload_Form(Form):
     date = DateField('Date on Certificate', validators =...)
     image = FileField(validators=[DataRequired()])

对于这一点非常重要的是图像FileField。这是与上传相关联的html。它扩展了一个基础html

{% block content %}
    <form action="" method="POST" name="upload" enctype="...">
    <p>{{ form.image.label }}<br>{{ form.image }}</p>
    ...
{% endblock %}

我需要使用python flask来预览图像,或者找到一种方法从FileField中的文件中提取URL以使用JS显示图像。我尝试过form.image.url,但只返回一个空字符串。我知道如何在JavaScript中执行此操作但我无法理解如何将其存储在数据库中,因为我使用的是Python烧瓶框架,它需要从类Upload_Form传递到FileField中。我只是很难将它翻译成python烧瓶,而不是JS。这是我在烧瓶中提取文件的地方。

@app.route('/upload', methods=['GET', 'POST'])
def upload():
    form = Upload_Form()
    if request.method == "POST" and form.validate_on_submit():
        if img and os.path.splitext(img.filename)[1] in ALLOWED_EXTENSIONS:
            try:
                div_id = Division.query.filter_by(category=form.category.data).first().id
            except AttributeError:
                div_id = None
            c = Certificate(div_id=div_id,user_id=g.user.id, status=False)
            db.session.add(c)
            db.session.commit()
            ...
            return render_template('upload.html', title='Upload successful', form=form)

0 个答案:

没有答案