Код контекстного процессора Django не работает

Я пытаюсь использовать context_processors.py для отображения количества непрочитанных сообщений на иконке сообщения base.html, но по какой-то причине это не работает.

В то время как счетчик непрочитанных сообщений работает для user_messages_view правильно, он просто не работает для base.html. Я попробовал изменить логику моего context_processors.py, но результат тот же.

Итак, мой models.py:

class Message(models.Model):
    sender = models.ForeignKey(CustomUser, related_name='sent_messages', on_delete=models.CASCADE)
    recipient = models.ForeignKey(CustomUser, related_name='received_messages', on_delete=models.CASCADE)
    business = models.ForeignKey(Business, related_name='messages', on_delete=models.CASCADE, null=True)
    content = models.TextField()
    timestamp = models.DateTimeField(auto_now_add=True)
    is_read = models.BooleanField(default=False)

    def __str__(self):
        return f'Message from {self.sender} to {self.recipient} in {self.business}'

    @property
    def sender_is_business(self):
        return self.sender.business.exists()

    @property
    def recipient_is_business(self):
        return self.recipient.business.exists()

Мой views.py:

Мой user_messages.html:

Мой context_processors.py:

def unread_message_count(request):
    if request.user.is_authenticated:
        unread_count = Message.objects.filter(recipient=request.user, is_read=False).count()
    else:
        unread_count = 0
    return {
        'unread_message_count': unread_count,
    }

Мой settings.py:

TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [],
        'APP_DIRS': True,
        'OPTIONS': {
            'context_processors': [
                'django.template.context_processors.debug',
                'django.template.context_processors.request',
                'django.contrib.auth.context_processors.auth',
                'django.contrib.messages.context_processors.messages',
                'business.context_processors.unread_message_count',
            ],
        },
    },
]

Мой base.html:

                                <a href="{% url "user_messages" %}">
                                    <div class="max-md:hidden wishlist-icon flex items-center relative cursor-pointer">
                                        <i class="ph-bold ph-chats text-2xl"></i>
                                        <span class="quantity wishlist-quantity absolute -right-1.5 -top-1.5 text-xs text-white bg-black w-4 h-4 flex items-center justify-center rounded-full">{{ unread_message_count }}</span>
                                    </div>
                                </a>

Все остальные счетчики контекстного процессора работают, кроме этого. По моему мнению, логика работы счетчика непрочитанных_сообщений кажется нормальной. Я не могу понять, почему это не работает.

Вернуться на верх