from django.db import models from django.utils.translation import gettext_lazy as _ class Notification(models.Model): class ServiceChoices(models.TextChoices): IMAM_JAVAD = 'imam-javad', _('Imam Javad') DOBOODI = 'doboodi', _('Doboodi') title = models.CharField(max_length=255, verbose_name=_('title')) message = models.TextField(max_length=512, verbose_name=_('message')) user = models.ForeignKey("account.User", on_delete=models.CASCADE, verbose_name=_('user'), related_name='notifications') is_read = models.BooleanField(default=False, verbose_name=_('is read')) service = models.CharField( max_length=20, choices=ServiceChoices.choices, default=ServiceChoices.IMAM_JAVAD, verbose_name=_('service') ) created_at = models.DateTimeField(auto_now_add=True, verbose_name=_('created at'), null=True) updated_at = models.DateTimeField(auto_now=True, verbose_name=_('updated at'), null=True) class Meta: verbose_name = _('Notification') verbose_name_plural = _('Notifications') def __str__(self): return self.title