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

时间:2014-02-12 23:25:51

标签: jinja2

Jinja2模板代码:

{% if u.user_name == u.user_email %}
 {{ u.user_email }}
{% else %}
 {{ u.user_name }}<br />
 {{ u.user_email }}
{% endif %}

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

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

我不确定如何正确编写此测试语法。我已阅读文档并尝试了Convert integer to string Jinjacompare two variables in jinja2 template等方法。我想我的数据类型有问题,我只是不确定如何编写这种语法以便它可以工作。

感谢任何帮助!

1 个答案:

答案 0 :(得分:3)

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

{% 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 %}

希望这有帮助!