python – 将变量传递到jinja导入或从父HTML文件中包含

情况将是:

“你有一个名为person的变量,它包含一些字段,如名称,地址等,你想传递给部分HTML” – 这个解决方案可能是搜索客户的结果,例如

snippet.html

<div id="item">
  <ul>
     <li>
         <span>{{name}}</span>
         <span>{{address}}</span>
     <li>
  </ul>
</div>

的mypage.html

<div id="result">
   {% include "snippet.html" passing {{person}} %}
</div>

什么是最好的方式来实现这一点.在文档中,它谈到了遍及各地的传递环境,但是在渲染模板时,这似乎是一个相当大的对象.当然,将特定对象传递到每个模板中更为容易吗?

解决方法

当您将模板添加到另一个模板时,它可以访问其上下文,因此,如果将您的人员变量传递给mypage.html的上下文,则可以从导入的模板访问它,如下所示:

snippet.html:

<div id="item">
    <ul>
        <li>
            <span>{{ person.name }}</span>
            <span>{{ person.address }}</span>
        </li>
    </ul>
</div>

的mypage.html:

<div id="result">
    {% include 'snippet.html' %}
</div>

view.py:

def view(person_id):
    person = Person.get(person_id) # or whatever source you get your data from
    return render_template('mypage.html',person=person)

dawei

【声明】:淮南站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。