Выделение новых сообщений в django/react

У меня есть модель Post в django, которая имеет Channel в качестве внешнего ключа. Я хочу сделать так: всякий раз, когда в модели Post появляется новый пост, этот канал должен быть выделен, и это должно зависеть от пользователя. Я думаю, что каждый раз, когда создается новый пост, будет один флаг is_highlighted, который будет установлен в true. Правильно ли это? Есть ли другой лучший способ? TIA

class Post(models.Model):
    
    user = models.ForeignKey(
        User,
        on_delete=models.DO_NOTHING,
        blank=True,
        null=True,
        related_name="post_user_id")

    channel =  models.ForeignKey(
        Channel,
        on_delete=models.DO_NOTHING,
        blank=False,
        null=False,
        related_name="post_channel_id")

и модель канала является

class Channel(models.Model):
    
    channel_name = models.CharField(
        max_length=250,
        help_text="Channel channel_name")

Я думаю, что самым простым решением в долгосрочной перспективе будет хранение даты создания записи, что можно сделать, добавив строку

creation_date = models.DateField("creation_date", auto_now_add=True) в модель Post, к которой вы хотите применить это. Если вы используете REST api для связи между вашим Django backend и React frontend, вам нужно будет сериализовать это, чтобы дата была добавлена в json, который использует приложение React, затем в коде вашего frontend вы можете иметь простой сценарий, который выделяет пост, когда разница между текущей датой и датой_создания больше определенного периода времени. Это должно решить вашу проблему и автоматизировать процесс изменения подсветки.

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