В рамках онлайн-платформы Django, предлагающей онлайн-курсы, авторы курсов могут свободно включать упражнения из общедоступного хранилища упражнений.
Каждый курс имеет свои собственные главы и свободен в том, как организовать упражнения вглавы.
Упражнение в курсе может быть частью нулевой или одной главы. Когда глава в курсе удаляется, упражнения в нем просто возвращаются к статусу не назначенной главы.
Что у меня есть:
class Exercise(models.Model):
title = models.CharField(max_length=30)
class Course(models.Model):
title = models.CharField(max_length=30)
exercises = models.ManyToManyField(Exercise)
class Chapter(models.Model):
course = models.ForeignKey(Course, on_delete=models.CASCADE)
title = models.CharField(max_length=30)
Проблема:
Пока что нет никакой связи между упражнениями и главами курса, мне не ясно, как сделать это должным образом, принимая во внимание ограничение, что упражнение в главе должно быть в курсеа также.