receivers.py 467 B

123456789101112131415
  1. from django.utils import timezone
  2. from django.dispatch import receiver
  3. from django.db.models.signals import pre_save
  4. from drf_temptoken import models, utils
  5. @receiver(pre_save, sender=models.TempToken)
  6. def on_token_pre_save(sender, *args, **kwargs):
  7. models.TempToken.objects.filter(expires_on__lte=timezone.now()).delete()
  8. instance = kwargs['instance']
  9. if not instance.expires_on:
  10. instance.expires_on = timezone.now() + utils.get_time_delta()