class Course(models.Model):
course_code = models.CharField(max_length=100,unique=True)
title = models.CharField(max_length=200)
short = models.CharField(max_length=50)
elective_group = models.CharField(max_length=100)
class Unit(models.Model):
title = models.CharField(max_length=100)
short = models.CharField(max_length=50)
course = models.ForeignKey(Course)
class Pattern(models.Model):
pattern_name = models.CharField(max_length=200)
class ExamSchedule(models.Model):
exam_date = models.DateTimeField()
course = models.ForeignKey(Course)
pattern = models.ForeignKey(Pattern)
**units = models.ManyToManyField(Units)**
我需要实现类似于用户创建Examschedule对象的功能,在从下拉列表中选择课程后,单元小部件应该只包含与所选课程相关的单元。
由于 Anks
答案 0 :(得分:0)
我用Javascript做了类似的事情。
从禁用单元HTML元素开始。一旦用户选择了课程,就会使用所选课程向服务器发出Ajax请求,并返回有效单元。仍然使用Javascript,您将这些单位添加到适当的元素,然后才启用它。如果用户改变课程,则会使用适当的单位更新Unit元素。
为了加快速度,您可以将所有单元提供给客户端,并在选择课程后使用Javascript动态加载它们。这种方法减少了等待时间,但增加了传输的文件大小(如果它们不是数百,则可能更好)。