消息框架 - 删除重复的消息

时间:2018-03-27 13:57:12

标签: django django-messages

我有以下代码:

{% for message in messages %}
    <div class="{{ message.tags }}">{{ message }}</div>
{% endfor %}

有些情况下,同一条消息会重复多次。如何使消息独一无二?

1 个答案:

答案 0 :(得分:1)

您可以通过创建自己的类并在设置文件中设置它来覆盖默认存储。

class MyMessageStorage(BaseStorage):  
    # you could override FallbackStorage, CookieStorage or SessionStorage instead
    self._logged_messages = set()

       def add(self, level, message, extra_tags=''):
           if message in self._logged_messages:
               return
           return super().add(level, message, extra_tags)

并在settings.py

MESSAGE_STORAGE = 'path.to.MyMessageStorage'