将Python合并到Flask HTML页面中

时间:2017-08-15 16:24:38

标签: python html python-2.7 flask

假设我有一个包含一些HTML代码的flask_app.py应用程序,我想打印一个python变量:

from flask import Flask
app = Flask(__name__)

myString = foo

@app.route("/")
def hello():
  return """<!DOCTYPE html>
        <html>
            <body>
                <p>""" + myString + """
            </body>
        </html>"""

现在这种方法很好,但并不是真正可扩展的。我在index.html文件中有基本的HTML代码段,如何使用它生成相同的结果(并打印myString)?

1 个答案:

答案 0 :(得分:1)

将此文件放在/tmp/x.py

from flask import Flask, render_template
app = Flask(__name__)

myString = 'foo'

@app.route("/")
def hello():
  return render_template('index.html', myString=myString)

app.run(debug=True)

此文件位于/tmp/templates/index.html

<!DOCTYPE html>
<html>
    <body>
        <p>{{ myString }}
    </body>
</html>

然后运行此命令:

python /tmp/x.py

参考:

http://flask.pocoo.org/docs/0.12/quickstart/#rendering-templates