求助:如何在ModelForm中根据其他字段来确定另一个字段的选值范围?
各位好: 我现在有个需求,就是要通过一个字段确定另一个字段的取值范围。比如说,模型Work中dep表示所属部门,要从该部门中选择一个执行人people。但是dep是不会变化的。因此,创建Work的时候,只需要选择Work的名称和所属dep就可以了,然后还为Work指定了一个默认执行人people。
Work(models.Model):
dep = models.ForeignKey(Dep,on_delete=models.CASCADE,verbose_name="部门")
people = models.ForeignKey(User,on_delete=models.CASCADE,verbose_name="默认执行人")
def possibleP(self):
return User.objects.filter(dep=self.dep)
然后到实际指派任务的时候,就是另外一个模型WorkReal了,它需要根据Work所在部门,实际指派一个people,有时候就不是Work中默认的people了,另外,还得加一堆比如说,需要的时间,到期日之类的东西。
WorkReal(models.Model):
w = modelsForeignKey(Work, on_delete=models.CASCADE,verbose_name="任务名")
people=models.ForeignKey(User,on_delete=models.CASCADE,verbose_name="执行人")
time = models.IntegerField(verbose_name="工时")
duedate = models.DateField(auto_now_add=True,verbose_name="到期日")
def possibleP(self):
return self.m.possibleP()
那么,我该怎么用ModelForm来写WorkReal对应的表单呢?尤其是people部分,希望能从w中直接获取下拉框中可选择的people项。
评论 1
没人回复啊 我帮你顶一下