populateonlinetracker.py 676 B

1234567891011121314151617181920
  1. from django.contrib.auth import get_user_model
  2. from django.core.management.base import BaseCommand
  3. from misago.core.pgutils import chunk_queryset
  4. from misago.users.models import Online
  5. User = get_user_model()
  6. class Command(BaseCommand):
  7. help = "Populates online tracker for user accounts that lack it."
  8. def handle(self, *args, **options):
  9. entries_created = 0
  10. queryset = User.objects.filter(online_tracker__isnull=True)
  11. for user in chunk_queryset(queryset):
  12. Online.objects.create(user=user, last_click=user.last_login)
  13. entries_created += 1
  14. self.stdout.write("Tracker entries created: %s" % entries_created)