Python 从jinja2中的父块获取内容

Python 从jinja2中的父块获取内容,python,flask,jinja2,Python,Flask,Jinja2,我需要通过控制台脚本从Jinja2中的特定块中获取内容。比如说 //global template {% block target %} <some_content_from_top> {% endblock %} //parent template {% extends 'top.html' %} {% block target %} <some_content_from_parent> {% endblock %} //child template

我需要通过控制台脚本从Jinja2中的特定块中获取内容。比如说

//global template
{% block target %}
    <some_content_from_top>
{% endblock %}

//parent template
{% extends 'top.html' %}
{% block target %}
    <some_content_from_parent>
{% endblock %}

//child template
{% extends 'parent.html' %}
{% block target %}
    <some_content>
{% endblock %}
但我如何从所有父模板中获取内容。当然,我可以从扩展块中获取父模板名称,并反复执行相同的操作,直到我获得没有扩展块的顶级模板。但也许有更有效的方法?

您可以使用它将块中的内容包含在父模板中

top.html

{% block target %}
  <some_content_from_top>
{% endblock %}
{% extends 'top.html' %}
{% block target %}
  <some_content_from_parent>
  {{ super() }}
{% endblock %}
{% extends 'parent.html' %}
{% block target %}
  {{ super() }}
  <some_content>
{% endblock %}
child.html

{% block target %}
  <some_content_from_top>
{% endblock %}
{% extends 'top.html' %}
{% block target %}
  <some_content_from_parent>
  {{ super() }}
{% endblock %}
{% extends 'parent.html' %}
{% block target %}
  {{ super() }}
  <some_content>
{% endblock %}
{%extends'parent.html%}
{%block target%}
{{super()}}
{%endblock%}
这将导致:

<some_content_from_parent>
<some_content_from_top>
<some_content>

很抱歉,我的问题中遗漏了一些重要的员工。更新问题