2

我希望这是有道理的,这就是我想做的(无论出于何种原因)

我想在我的模型表单中创建一个非模型表单字段

例如,下面我有一个模型表单,我想在init中添加一个名为template的模型 中不包含的额外字段。我不保存这个新字段,所以它不需要在我的模型中或我希望它是(我用它做了一些花哨的 ajax 东西。)。

表格.py

class testForm(forms.ModelForm):
    def __init__(self, user=None, *args, **kwargs):
        super(testForm, self).__init__(*args, **kwargs)
        if user is not None:
            this_templates = Template.objects.for_user(user)

         self.fields["templates"] = forms.??????????
4

1 回答 1

4

你快到了:

self.fields["templates"] = forms.CharField()

或者,如果您更喜欢其他字段类型,请查看文档以获取可能的选项。

有关其他背景信息,请查看Overloading Django Form Fields

于 2013-05-19T16:05:42.467 回答