Django template comparing string


Question

I'm new with django. I'm stuck with the problem of comparing string in the template.

I have use ifnotequal tag to compare string. But it is not working.

I have try to output the variable:

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

Here I compare:

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

But when I do the hardcode: It works.

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

what is the problem? The article.creator is coming from the database and the user.username is from the request.

Can anyone help me with this issue?

1
31
11/19/2012 3:52:52 PM

Accepted Answer

article.creator is a User and request.user.username is a string. Try comparing request.user instead.

18
6/1/2012 7:01:05 AM

Try this:

{% ifnotequal article.creator|stringformat:"s" request.user.username %}

Licensed under: CC-BY-SA with attribution
Not affiliated with: Stack Overflow
Icon