从Flask服务器生成HTML代码

4 投票
1 回答
5580 浏览
提问于 2025-04-18 03:16

我有一个用Python写的Flask服务器,里面有一个包含一些元素的列表。这个列表里有一些条目。我想用这个列表里的元素生成一个HTML页面。

注意:我正在制作一个应用程序,这个列表里记录了用户购买的所有东西,最后我们需要展示这些购买的东西。我是通过request.form()把它们存储到这个列表里的。

1 个回答

5

你需要使用 flask.render_template 来实现这个功能。

这个函数需要一个位置参数,另外你可以传入任意数量的关键字参数。用法如下:

from Flask import render_template

@yourApp.route('/your/path')
def renderThisPath:
  res = render_template('your-jinja2-template-file.html', 
                       some='variables',
                       you='want',
                       toPass=['to','your','template'])
  return res

然后在你的模板中,你可以这样做:

<html>
<!--head etc-->
<body>
  <div>{{ you }}</div>
  <div>{{ some }}<span>?</span></div>
  <!-- you can iterate on a list to add many items -->
  {% for v in toPass %}
    <div>{{ v }}</div>
  {% endfor %}
</body>
</html>

渲染结果是:

<html>
<!--head etc-->
<body>
  <div>want</div>
  <div>variables<span>?</span></div>
    <!-- you can iterate on a list to add many items -->
    <div>to</div>
    <div>your</div>
    <div>template</div>
</body>
</html>   

撰写回答