Jinja2是Flask内置的模板引擎,用于动态生成HTML内容。以下是核心知识点:

基本语法速览

  • 变量替换{{ variable }}
    示例:<h1>{{ title }}</h1> 会显示传入的变量值
  • 控制结构{% if condition %} / {% for item in items %}
    示例:
    {% if user.is_admin %}
      <p>欢迎管理员!</p>
    {% else %}
      <p>普通用户欢迎词</p>
    {% endif %}
    
  • 注释{# 这是注释内容 #}
    示例:{# 以下代码仅用于演示 #}

实战演示

  1. 创建模板文件 templates/index.html
    Jinja2模板结构
  2. 使用render_template函数渲染
    from flask import Flask, render_template
    app = Flask(__name__)
    
    @app.route('/')
    def home():
        return render_template('index.html', title='Flask教程')
    

扩展阅读

📌 提示:Jinja2语法与Python高度相似,掌握基础后可快速上手复杂模板逻辑!