Added model Subscribe

This commit is contained in:
dormantman 2019-12-27 15:30:41 +03:00 committed by Kuroshini
parent a8f053a646
commit 08f675cdbc

View File

@ -109,10 +109,7 @@ class Subscriber(ProjectBaseMixin):
) )
old_id = models.PositiveIntegerField(_('old id'), blank=True, null=True, default=None) old_id = models.PositiveIntegerField(_('old id'), blank=True, null=True, default=None)
subscription_type = models.ForeignKey(SubscriptionType, on_delete=models.CASCADE, null=True, default=None) subscription_types = models.ManyToManyField(SubscriptionType, through='Subscribe')
subscribe_date = models.DateTimeField(_('Last subscribe date', blank=True, null=True, default=now))
unsubscribe_date = models.DateTimeField(_('Last unsubscribe date'), blank=True, null=True, default=None)
objects = SubscriberManager.from_queryset(SubscriberQuerySet)() objects = SubscriberManager.from_queryset(SubscriberQuerySet)()
@ -130,7 +127,6 @@ class Subscriber(ProjectBaseMixin):
def unsubscribe(self): def unsubscribe(self):
"""Unsubscribe user.""" """Unsubscribe user."""
self.unsubscribe_date = now()
self.state = self.UNUSABLE self.state = self.UNUSABLE
self.save() self.save()
@ -147,3 +143,19 @@ class Subscriber(ProjectBaseMixin):
url = settings.SITE_REDIRECT_URL_UNSUBSCRIBE url = settings.SITE_REDIRECT_URL_UNSUBSCRIBE
query = f'?code={self.update_code}' query = f'?code={self.update_code}'
return f'{schema}://{site_domain}{url}{query}' return f'{schema}://{site_domain}{url}{query}'
class Subscribe(ProjectBaseMixin):
"""Subscribe model."""
subscribe_date = models.DateTimeField(_('Last subscribe date'), blank=True, null=True, default=now)
unsubscribe_date = models.DateTimeField(_('Last unsubscribe date'), blank=True, null=True, default=None)
subscriber = models.ForeignKey(Subscriber, on_delete=models.CASCADE)
subscription_type = models.ForeignKey(SubscriptionType, on_delete=models.CASCADE)
class Meta:
"""Meta class."""
verbose_name = _('Subscribe')
verbose_name_plural = _('Subscribes')