Solving N+1 Queries in Django ORM
# Bad: Triggers 1 query for courses + N queries for each category
courses = Course.objects.all()
# Optimized: Single SQL JOIN for ForeignKey
courses_optimized = Course.objects.select_related('category').prefetch_related('lessons')