使用模型中的数据填充表单字段而不使用外键

时间:2016-01-21 21:12:35

标签: python django forms

我的问题很容易解释,但我只能想到解决问题的方法。我有一个800项的列表,我希望用户能够选择。然后他们将东西输入文本框然后点击。然后我从那里拿走它并处理它并吐回一个回复。

如何将Taxonomy中保存的项目填入表格的下拉列表中?

模型:

class Taxonomy(models.Model):
    code = models.CharField(max_length=10, blank=False)
    specialty = models.CharField(max_length=60, blank=False)

    def __str__(self): #python 3.3. is __str__
        return self.specialty

观点:

def NPI(request):
    form = NPIQueryForm(request.POST or None)
    ...other stuff...

forms.py:

class NPIQueryForm(forms.ModelForm):
    class Meta:
        model = Taxonomy
        fields = ['specialty']

我考虑过的hacky方法只是创建一个输入字段并手动粘贴选项。但我希望它们可以在管理员中轻松修改,所以我避免这样做。另外,我考虑创建两个模型,其中一个是另一个的外键,但这似乎是非常不必要的。我一定错过了什么。

1 个答案:

答案 0 :(得分:1)

Django有ModelChoiceField用于从模型对象列表中选择一个选项。

可以像这样使用:

Service="MyNamespace.MyRenamedService"
相关问题