【发布时间】:2019-09-08 05:31:36
【问题描述】:
我一直在从事烧瓶中的一个项目,但我被困在一个地方,我需要弄清楚如何产生一个烧瓶模板而不是另一个。
为了说明我的意思,例如,我有一个这样的程序。
main.py
from flask import Flask, stream_with_context, Response, render_template
app = Flask('app')
@app.route('/')
def hello_world():
def generate():
yield render_template('index.html')
yield render_template('index2.html')
return Response(stream_with_context(generate()))
app.run(host='0.0.0.0', port=8080)
index.html
<h3>Hi</h3>
index2.html
<h3>Bye</h3>
运行 main.py 返回:
Hi
Bye
尽管这是有道理的,但我的目标是让它只产生Bye,它应该替换Hi。我尝试了其他路径,例如返回两者,但它们都没有奏效。关于如何做到这一点的任何想法?
【问题讨论】:
-
我认为您不了解生成器的工作原理...它需要通过迭代或
next来调用。 -
@Error-SyntacticalRemorse 是的,我也是这么想的,在这种情况下使用生成器是不正确的,但是当我返回两个没有生成器的文件时,只有第一个文件的内容可见。如果你不介意,你能告诉我你说在这个特定场景中使用迭代或
next函数是什么意思吗?
标签: python python-3.x flask