Строка сравнения шаблонов Django

Я новичок в django. Я застрял в проблеме сравнения строки в шаблоне.

Я использую ifnotequal tag для сравнения строки. Но это не работает.

Я попытался вывести переменную:

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

Здесь я сравниваю:

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

Но когда я делаю жесткий код: он работает.

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

в чем проблема? article.creator поступает из базы данных, а user.username – из запроса.

Может ли кто-нибудь помочь мне с этой проблемой?

3 Solutions collect form web for “Строка сравнения шаблонов Django”

article.creator – это User и request.user.username – это строка. Попробуйте сравнить request.user .

Попробуй это:

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

Для сравнения строк в использовании шаблона

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

и для неравного

 {% if name != "someone" %} ............ ............ {% endif %} 
  • Невозможно использовать строку unicode в шаблоне django
  • Как правильно получить URL-адрес для входа в шаблон?
  • что может привести к тому, что html и script будут вести себя по-разному между итерациями цикла for?
  • Основы MVC и джанго
  • Шаблоны Django разделяют пробелы?
  • Django гуманизировать вне шаблона?
  • Пользователь, не имеющий электронной почты, не может оставлять комментарии, используя структуру комментариев Django
  • render_to_response или перенаправление изменяет элементы шаблона в Django 1.8
  • Python - лучший язык программирования в мире.