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 Jinja和compare two variables in jinja2 template等方法。我想我的数据类型有问题,我只是不确定如何编写这种语法以便它可以工作。
感谢任何帮助!
答案 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 %}
希望这有帮助!