Flask:无法重定向到特定页面

时间:2018-03-27 00:49:08

标签: python flask

我想重定向放置特定照片的原始页面。 我的代码就像这样

MemoryStream

和HTML就像这样

@app.route('/description', methods=['GET', 'POST'])
def description():

    photo_id = request.args.get('id')
    photo = Photo.query.filter_by(id=photo_id).first()

    if form.validate_on_submit():
        flash('Your comment posted successfully.')
        return redirect(url_for('description'))
    return render_template('description.html', title='Description', photo=photo, form=form)

我希望重定向到<tr id="photo_image"> <td> <img src={{ url_for('static', filename='images/' + photo.image ) }} id="photo_image" /> </td> </tr> 这样的原始网页 但当我试图/description?id=时 它将重定向到return redirect(url_for('description')) 并且错误发生了。 我该如何解决这个问题?

抱歉,我问这个问题的方式很糟糕。 我想重定向到/description页面,但这种方式无法识别ID并重定向到/description?id=页面并发生错误,因此无法找到该页面。 基本上我想要做的是在验证提交后重定向到原始的特定页面。

1 个答案:

答案 0 :(得分:0)

您还必须将id作为参数传递给render_template函数:

return render_template('description.html', title='Description', photo=photo, form=form, photo_id = photo_id)

然后在你的模板中:

<tr id="photo_image">
        <td>
            <img src={{ url_for('static', filename='images/' + photo.image ) }} id={{ photo_id }} />
        </td>
</tr>