当一个值为空时jinja2字符串比较?

ElB*_*Bel 1 jinja2

Jinja2 模板代码:

{% if u.user_name == u.user_email %}
 {{ u.user_email }}
{% else %}
 {{ u.user_name }}<br />
 {{ u.user_email }}
{% endif %}
Run Code Online (Sandbox Code Playgroud)

如果没有单独的名称,通常数据源会将 user_name 字段设置为 user_email。但是,有时根本没有为 user_name 字段定义任何内容。

问题在于,在上面的 Jinja2 代码中,如果 user_name 字段未定义/为空,则上面的测试评估为 false 并且两行都被吐出 - 其中之一是空白。

我不确定如何正确编写此测试语法。我已经阅读了文档并尝试了诸如Convert integer to string Jinja比较 jinja2 模板中的两个变量之类的方法。我想我的数据类型有问题,我只是不确定如何编写此语法以使其正常工作。

任何帮助表示赞赏!

And*_*oos 7

你想要的是无...试试这个

{% if (u.user_name == None or u.user_name == '') and u.user_name == u.user_email %}
    {{ u.user_email }}
{% else %}
    {{ u.user_name }}<br />
    {{ u.user_email }}
{% endif %}
Run Code Online (Sandbox Code Playgroud)

希望这可以帮助!