如何在 django-notifications-hq 中隐藏 0 个通知计数

How to hide 0 notification count in django-notifications-hq

我很想在 django-notifications-hq 中隐藏为 0 的通知计数 我尝试了以下方法,但它没有定期更新并正确显示数字。

 {% live_notify_badge as nc %}
                      {% if nc > 0|add:0 %}
                      <span class="badge-notifications badge badge-pill badge-danger" style="float:right;margin-bottom:-3px;margin-top: -2px !important; margin-left: 10px !important; font-size: 0.6rem;">
                      {% live_notify_badge %}</span> 
                      {% endif %} 

nc不是通知数。它生成一些 HTML 将进行 Javascript 调用以获取通知数量。

您可以通过以下方式获取模板中未读通知的数量:

{{ user.notifications.unread.count }}

所以我们可以检查是否存在未读通知,并使用它来呈现 {% live_notify_badge %}:

{% if <b>user.notifications.unread.exists</b> %}
    <span class="badge-notifications badge badge-pill badge-danger" style="float:right;margin-bottom:-3px;margin-top: -2px !important; margin-left:10px !important; font-size: 0.6rem;">
        {% live_notify_badge %}
    </span> 
{% endif %}

但是请注意,这将在 服务器端 呈现,这意味着当用户获取页面且没有通知时,它不会显示徽章。但是,如果稍后有通知,则不会呈现这些通知。