56

我是 django 的新手。我遇到了在模板中比较字符串的问题。

我使用 ifnotequal 标签来比较字符串。但它不起作用。

我尝试输出变量:

{{ request.user.username }} 
{{ article.creator }}

这里我比较一下:

{% ifnotequal request.user.username article.creator %}
    {# output something #}
{% endifnotequal %}

但是当我进行硬编码时:它可以工作。

{% ifnotequal "justin" "mckoy" %}
    {# output something #}
{% endifnotequal %}

问题是什么?来自article.creator数据库,user.username来自请求。

谁能帮我解决这个问题?

4

4 回答 4

68

对于模板使用中的字符串比较

{% if name == "someone" %}
   ............
   ............
{% endif %}

并且不相等

{% if name != "someone" %}
   ............
   ............
{% endif %}
于 2014-04-16T08:45:10.417 回答
66

尝试这个:

{% ifnotequal article.creator|stringformat:"s" request.user.username %}
于 2013-06-08T01:56:32.260 回答
23

article.creator是一个User并且request.user.username是一个字符串。尝试比较request.user

于 2012-06-01T07:01:05.283 回答
6
{% ifequal material.unit 'U' %}
    <p>are equals!<p/>
{% endifequal %}
于 2018-05-17T21:25:42.347 回答