django modelForm:根据相关字段动态调整字段

问题描述 投票:0回答:1

我一直在从事医院项目练习,想知道如何根据专业选择呈现给定字段(模型“医生”): 用户必须首先选择一个医疗专业,然后根据该专业,医生列表将动态更新。

如何设计我的 modelForm 来实现该目标?我需要在模板文件中嵌入一些 JavaScript 吗?

这是我的django项目中的相关代码:

# models.py

class Speciality(models.Model):
    specialite_id = models.AutoField(primary_key=True)
    nom = models.CharField(max_length=50, unique=True, verbose_name="Spécialité")

    def __str__(self):
        return f"{self.nom}"

class Doctor(CustomUser):
    medecin_id = models.AutoField(primary_key=True)
    matricule_medecin = models.CharField(max_length=50, unique=True)  
    specialite = models.ForeignKey(Specialite, on_delete=models.CASCADE)
    admin = models.ForeignKey(Administrateur, on_delete=models.SET_NULL, null=Tru

e, blank=True)

    def __str__(self):
        return f"Dr {self.nom} {self.prenom}, spécialité : {self.specialite}"

# forms.py

class CreateSejour(forms.ModelForm):    
    class Meta:
        model = Sejour
        fields = '__all__'
        widgets = {'date_entree': forms.SelectDateWidget(years=range(2015, 2025)),
                   'date_sortie': forms.SelectDateWidget(years=range(2015, 2025)),
                   'motif': forms.Textarea()}

我不知道如何解决这种情况:我是否必须在 modelForm 内或在我的视图中实现一些逻辑? 感谢您的帮助。 德716

实际上我陷入了那个阶段,我的 django 经验不允许我解决这个问题,而且我没有 javascript 经验

django dynamic updates
1个回答
0
投票

如果你对js没有任何了解,你应该做一个多步骤的表单

© www.soinside.com 2019 - 2024. All rights reserved.