Python 是否可以在不替换变量的情况下加载jinja2模板?

Python 是否可以在不替换变量的情况下加载jinja2模板?,python,flask,jinja2,Python,Flask,Jinja2,假设我们有以下结构 模板/modal.html <div class="title"> {% block title %} {% endblock %} </div> <div class="content"> {% block content %} {% endblock %} </div> {% extends "modal.html" %} {% block title %} Hello {{ user }

假设我们有以下结构

模板/modal.html

<div class="title">
   {% block title %}
   {% endblock %}
</div>
<div class="content">
   {% block content %}
   {% endblock %}
</div>
{% extends "modal.html" %}
{% block title %}
     Hello {{ user }}
{% endblock %}
{% block content %}
     Some content
     {% include "table.html" %}
{% endblock %}
<table>
   <tr>
      <td>
         {{ data }}
      </td>
   </tr>
</table>
模板/table.html

<div class="title">
   {% block title %}
   {% endblock %}
</div>
<div class="content">
   {% block content %}
   {% endblock %}
</div>
{% extends "modal.html" %}
{% block title %}
     Hello {{ user }}
{% endblock %}
{% block content %}
     Some content
     {% include "table.html" %}
{% endblock %}
<table>
   <tr>
      <td>
         {{ data }}
      </td>
   </tr>
</table>

{{data}}
我想返回到客户端以下内容,用js/客户端模板填充它

<div class="title">
     Hello {{ user }}
</div>
<div class="content">
     Some content
    <table>
      <tr>
        <td>
          {{ data }}
       </td>
      </tr>
    </table>
</div>

你好{{user}}
一些内容
{{data}}
所以基本上我要寻找的是一种类似于在flask中呈现模板的方法,但它只组装模板,而不使用数据填充/呈现模板

环顾四周的资料,我找不到这样的方法


你知道我怎样才能做到这一点吗?

你可以用
raw

{% raw %}
    <div class="title">
         Hello {{ user }}
    </div>
    <div class="content">
         Some content
        <table>
          <tr>
            <td>
              {{ data }}
           </td>
          </tr>
        </table>
    </div>
{% endraw %}
{%raw%}
你好{{user}}
一些内容
{{data}}
{%endraw%}

为什么不把
“{{user}}”作为
user
的值和
“{{data}}”作为
data
的值传递进去呢?当然可以,但这是一个相当大的开销,在这两个地方都维护所有变量。我想可能会有一种更“正式”的方法来做这件事——只是我在flask中没有遇到过——你有模板预处理器函数,可以用来处理样板变量