from django.db.models.signals import post_save
from django.dispatch import receiver
from .models import Course
from .serializers import CourseSerializer
from django.conf import settings
import json

@receiver(post_save, sender=Course)
def export_course_data(sender, instance, **kwargs):
    """
    Exports the course data to a JSON file.
    """
    file_path = settings.DATA_CACHE_DIR / 'courses.json'
    courses = Course.objects.all()
    serializer = CourseSerializer(courses, many=True)
    with open(file_path, 'w') as f:
        json.dump(serializer.data, f, indent=4)
