我正在为使用 Jinja 模板的服务器使用 Flask 微框架。
我有一个父 template.html
和一些称为 child1.html
Và child2.html
的子模板,其中一些子模板是相当大的 HTML 文件,我想以某种方式将它们拆分,以便更好地了解我的工作。
của tôi main.py
脚本的内容:
from flask import Flask, request, render_template
app = Flask(__name__)
@app.route('/')
@app.route('/')
def home(task=''):
return render_template('child1.html', task=task)
app.run()
简化的template.html
:
{% block content %}{% endblock %}
|
魔法就在child1.html
:
{% extends 'template.html' %}
{% chặn nội dung %}
{% if task == 'content1' %}
{% kết thúc nếu %}
{% if task == 'content2' %}
{% kết thúc nếu %}
{% khối kết thúc %}
代替评论:
我有很多 html 文本,很难跟踪更改并且不犯一些错误,然后很难找到和纠正。
我想只加载 content1.html
而不是将其全部写入 child1.html
。
我遇到了câu hỏi này ,但我在实现它时遇到了问题。
我认为 Jinja2 可能有更好的工具。
Để ý:上面的代码可能无法正常工作,我只是为了说明问题而写的。
使用 jinja2 {% include %}
指令。
{% extends 'template.html' %}
{% chặn nội dung %}
{% if task == 'content1' %}
{% include 'content1.html' %}
{% kết thúc nếu %}
{% if task == 'content2' %}
{% include 'content2.html' %}
{% kết thúc nếu %}
{% khối kết thúc %}
这将包括正确内容文件中的内容。
Tôi là một lập trình viên xuất sắc, rất giỏi!