# from datetime import timedelta from django.apps import AppConfig from django.core.management import call_command from django.db.models.signals import post_migrate # from django.utils.timezone import now class GamesConfig(AppConfig): default_auto_field = "django.db.models.BigAutoField" name = "games" def ready(self): import games.signals # noqa: F401 post_migrate.connect(schedule_tasks, sender=self) def schedule_tasks(sender, **kwargs): # from django_q.models import Schedule # from django_q.tasks import schedule # if not Schedule.objects.filter(name="Update converted prices").exists(): # schedule( # "games.tasks.convert_prices", # name="Update converted prices", # schedule_type=Schedule.MINUTES, # next_run=now() + timedelta(seconds=30), # catchup=False, # ) # if not Schedule.objects.filter(name="Update price per game").exists(): # schedule( # "games.tasks.calculate_price_per_game", # name="Update price per game", # schedule_type=Schedule.MINUTES, # next_run=now() + timedelta(seconds=30), # catchup=False, # ) from games.models import ExchangeRate if not ExchangeRate.objects.exists(): print("ExchangeRate table is empty. Loading fixture...") call_command("loaddata", "exchangerates.yaml")