python - 如何在flask jinja2模板中使用python函数?

标签 python html user-interface flask jinja2

我正在使用flask jinja2模板向我的HTML页面发送一个列表列表。我想检查:- 列表中的项目是否属于 str 类型?。但得到一个异常(exception)

jinja2.exceptions.UndefinedError: 'isinstance' is undefined



代码如下:-
{% for i in req%}

    <tr>
        <th scope="row">{{loop.index}}</th>
        <td>{{i[1]}}</td>
        <td>{{i[24]}}</td>
        <td>{{i[49]}}</td>
        <td>{{i[53]}}</td>
        {% if isinstance(i[86], str) %}
            {% for j in i[86].split(",") %}
                <ol>
                    <li>{{i[86]}}</li>
                </ol>
            {% endfor %}
        {% else %}
            <td>{{i[86]}}</td>
        {% endif %}

    </tr>

    {% endfor %}

我可以使用 split(",")功能和想用isinstance()str() jinja 2 模板中的 python 。

最佳答案

jinja 模板中的语言实际上不是 python,它看起来像 python,这意味着 python 内置程序不存在。要使每个模板中都包含 python 内置插件,请在启动时将任何必需的内置插件添加到 globals 中。构建 jinja2.Environment 时的参数.像下面这样:

app.jinja_env.globals.update(isinstance=isinstance)

或者

import jinja2
env = jinja2.Environment()
env.globals.update(isinstance:isinstance)

关于python - 如何在flask jinja2模板中使用python函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62167968/

相关文章:

python - 熵计算的奇怪结果

html - 下拉导航栏并发症

wpf - 设计GUI应用程序: one VS multiple screens

java - Android-根据特定条件跳过View pager中的页面

python - 痛饮 : function that modifies its argument from c++ to python

Python:Tkinter 中的按钮小部件

python - 如何使用 scikit-image 计算手的尺寸?

python - 让 Google Cloud SDK 网站上线

html - 我可以使用 Tailwind CSS 实用程序类创建 Masonry 布局吗?

安卓。渐变图像显示不正确