clearsessions.py 662 B

123456789101112131415
  1. from datetime import timedelta
  2. from django.core.exceptions import ValidationError, NON_FIELD_ERRORS
  3. from django.core.management.base import BaseCommand, CommandError
  4. from django.utils import timezone
  5. from optparse import make_option
  6. from misago.sessions.models import Session
  7. class Command(BaseCommand):
  8. """
  9. This command is intended to work as CRON job fired every few hours to keep sessions table reasonable
  10. """
  11. help = 'Clears users sessions'
  12. def handle(self, *args, **options):
  13. Session.objects.filter(last__lte=timezone.now() - timedelta(hours=12)).delete()
  14. self.stdout.write('Sessions have been cleared.\n')