Джанго сообщения, как скрыть определенные

Я использую структуру сообщений Django для указания успешных и неудачных действий.

Как я могу исключить вход в аккаунт и выход из сообщений? В данный момент отображается посадка на странице после входа в систему. Successfully signed in as 'username', Я не хочу, чтобы это сообщение отображалось, но все остальные сообщения об успехе должны отображаться. То, что я пытался, показано ниже. Я попытался с помощью логики найти слово в сообщении "signed" в этом. Если это так, не отображать его. Это, однако, не работает, хотя.

{% if messages %}

 <div class="db-section">
      <ul class="messages">
        {% for message in messages %}

          {% if "signed" in message %} 
            # Don't display anything
          {% else %}

          <div class="alert alert-error">

          <strong style="color:{% if 'success' in message.tags %}green{% else %} red {% endif %};padding-bottom:10px;">{{ message }}</strong>

          </div>

          {% endif %}

        {% endfor %}
      </ul>
  </div>

{% endif %} 

Может ли кто-нибудь объяснить, почему приведенный выше код по-прежнему отображает сообщения, которые даже содержат "signed" в этом?

1 ответ

Решение

Использование safe фильтр для преобразования этого message атрибут объекта к фактической строке и сравнить

--- Your code ---
{% if "signed" in message|safe %} 
  # Don't display anything
{% else %}
--- Your remaining code ---
Другие вопросы по тегам