Flask中请求动作完成后如何回到之前触发请求的页面


文章列表页面,假设翻页到第二页,然后点击了某个文章的删除链接,删除操作如下

@app.route('/delete/<int:post_id>', )
def delete_post(post_id):
    if not session.get('logged_in'):
        flash('请先登录')
        return redirect(url_for('login'))

    post = db.Post.find_one({'_id': post_id })
    post.delete()
    flash('删除成功')

    return ???  # 要回到之前的页面

点击删除后,我希望回到之前翻倒的第二页列表,这里return该怎么写呢?

python flask

小猫推小狗 10 years, 6 months ago

flask 在 Securely Redirect Back 一节中详细讲了这种机制的实现。

使用 flask 的话,最通用的作法是使用 next 作为跳转 url 的参数名,或者从 referer 中获取。

shavel answered 10 years, 6 months ago

Your Answer