您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

在一个Flask响应中返回下载并呈现的页面

在一个Flask响应中返回下载并呈现的页面

您不能将多个响应返回到单个请求。取而代之的是,生成文件并将其存储在某个位置,并通过另一条路径来提供服务。返回呈现的模板,并提供一个网址以提供该文件的路径。

@app.route('/database')
def database():
    # generate some file name
    # save the file in the `database_reports` folder used below
    return render_template('database.html', filename=stored_file_name)

@app.route('/database_download/<filename>')
def database_download(filename):
    return send_from_directory('database_reports', filename)

在模板中,用于url_for生成下载网址。

<a href="{{ url_for('database_download', filename=filename) }}">Download</a>
Python 2022/1/1 18:30:17 有321人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶