background_job.py 599 B

123456789101112131415161718192021222324
  1. from threading import Thread
  2. from time import sleep
  3. from django.utils import timezone
  4. from .models import Review, CustomReply
  5. from .review_utils import populate_reviews
  6. def un_replied_reviews_with_no_comment():
  7. now = timezone.now()
  8. date = now - timezone.timedelta(days=30)
  9. reviews = Review.objects.filter(comment=None, reply=None, star_rating=5, update_time__gte=date).order_by('update_time')
  10. return reviews
  11. def task():
  12. while True:
  13. populate_reviews()
  14. # TODO: reply reviews in background
  15. sleep(60*60*6)
  16. thread = Thread(target=task)
  17. # thread.start()