У меня есть модели Exercise
, Training
и Workout
.
Training
содержит некоторые упражнения (Exercise
)
Workout
содержит тренировки (Training
).
Фрагмент моей модели.py:
class Exercise(models.Model):
user = models.ForeignKey(User, related_name='exercises',
on_delete=models.CASCADE)
name = models.CharField(max_length=80)
description = models.TextField(max_length=300)
details = models.ManyToManyField(ExerciseDetail, blank=True)
...
class Training(models.Model):
user = models.ForeignKey(User, related_name='trainings',
on_delete=models.CASCADE)
name = models.CharField(max_length=80)
description = models.CharField(max_length=250)
exercises = models.ManyToManyField(Exercise, related_name='trainings',
blank=True)
...
class Workout(models.Model):
user = models.ForeignKey(User, related_name='workouts',
on_delete=models.CASCADE)
created_at = models.DateTimeField(auto_now=True)
name = models.CharField(max_length=200)
description = models.TextField(max_length=400, blank=True)
trainings = models.ManyToManyField(Training, related_name='workouts',
blank=True)
...
Я хотел бы иметь возможность использовать что-то вроде Workout.objects.get(name='workout').exercises.objects.all()
, чтобы получить список / набор всех упражнений, включенных в тренингивыбранной тренировки.
Я также хотел бы иметь возможность использовать exercises`` field with Django Rest Framework to list all exercises, possibly with link to particular
Exercise``` сериализатор модели.
Может кто-нибудь дать подсказку, как я могу это сделать?