У меня есть модель, которая поддерживает список пакетов для курсов, которые будут проводиться, как показано ниже:
class CourseBatch(models.Model):
start_date = models.DateTimeField(null = True, blank = True)
end_date = models.DateTimeField(null = True, blank = True)
batch_name = models.CharField(max_length=50, default="Enter Batch Name")
course = models.ForeignKey(Course, on_delete=models.CASCADE, related_name="batches")
trainer = models.ForeignKey(Trainer, on_delete=models.CASCADE, related_name="trainer")
college = models.ForeignKey(College, on_delete=models.CASCADE, related_name="college")
additional_notes = models.TextField(max_length=500, default="No_Points",blank=True)
user = models.ForeignKey(User, verbose_name='user', on_delete=models.CASCADE, default=1)
objects = models.Manager()
def __str__(self):
return self.batch_name
Каждый пакет имеет ассоциированный список контрольных точек, чтобы поддерживать список тем, которые были охваченыв этом конкретном пакете, как показано ниже,
class ChkListForBatch(models.Model):
batch = models.ForeignKey(CourseBatch, on_delete=models.CASCADE, related_name="checklistitems")
chkpoint = models.ForeignKey(CheckPoint, on_delete=models.CASCADE, related_name="chkpoint")
chkpoint_done = models.BooleanField(default=False)
updated_on = models.DateTimeField(null = True, blank = True)
objects = models.Manager()
def __str__(self):
return self.chkpoint.description
Я могу отобразить представление списка партий, к которым я добавил столбец гиперссылки, который переносит пользователя в контрольный список для конкретного пакета.Теперь проблема в том, что я хочу отобразить все поля chkpoint и chkpoint_done в табличной форме, где каждая строка имеет 1 контрольную точку и флажок для поля chkpoint_done.В настоящее время я использую общий вид обновлений, который показывает форму с выпадающими меню для элементов batch и chkpoints в модели.