首页 > 解决方案 > Jinja 将 for 循环中的内容加倍

问题描述

我正在遍历名称列表并希望将其放入 html 中。问题是 Jinja 加倍

  • . 一个具有名称值,但另一个只是空的。为什么会这样?

    这是python代码

    import os
    
    from flask import Flask, session, render_template, request, flash, redirect, url_for
    
    app = Flask(__name__)
    app.config['SECRET_KEY'] = "secret"
    app.config["SESSION_PERMANENT"] = False
    app.config["SESSION_TYPE"] = "filesystem"
    
    Users = ['Bob', 'Nick', 'Alice', 'Brian']
    
    @app.route("/")
    def index():
        return render_template ("test.html", Users=Users)
    
    if __name__ == '__main__':
        app.run(debug=True)
    

    和 HTML

    <!DOCTYPE html>
    <html lang="en" dir="ltr">
      <head>
        <meta charset="utf-8">
        <title>Welcome</title>
      </head>
      <body>
        <p>User list</p>
        <ul id="user_list">
          {% for name in Users %}
            <li>{{ name }}<li>
          {% endfor %}
        </ul>
      </body>
    </html>
    

    这是我得到的输出。

  • 标签: pythonjinja2

    解决方案


    您只是没有关闭 test.html 文件中的 < li > 标记:

        <li>{{ name }}<li>
    

    推荐阅读