如何以Django模型形式添加其他字段

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

我试图在模型表单中包括一些虚拟字段,并在模型表单集工厂中使用它们。

模型形式:

class DistForm(forms.ModelForm):
    dist_from_txt = forms.CharField()
    ...
    class Meta:
        model: Distance
        fields = ('dist_from', 'dist_to', 'distance')
        widgets = {
    ...
    }

但是,在呈现时,多余的字段不会显示在表单上。

在此无需提及,我已经搜索过(包括here),但没有找到可能的解决方案。

问题是:如何以模型形式正确添加和渲染额外的字段?

django django-forms formset
1个回答
2
投票

forms.TextInput是窗口小部件实例,而不是表单字段实例。使用CharField:

class DistForm(forms.ModelForm):
    dist_from_txt = forms.CharField()
...
    class Meta:
        model: Distance
        fields = ('dist_from', 'dist_to', 'distance')
        widgets = {
...
© www.soinside.com 2019 - 2024. All rights reserved.