ModelForm构造函数中的Django Model实例值

时间:2014-09-24 20:18:56

标签: django django-forms

我想基于Form创建动态ModelForm。目的是在json字段中添加包含信息的字段。

class MyForm(forms.ModelForm):
    class Meta:
        model = MyModel
        fields = ['name', 'json']


    def __init__(self, *args, **kwargs):
        super(MyForm, self).__init__(*args, **kwargs)

        [ Create fields here]

我可以像这样动态创建字段:

    variables = ('var_1', 'var_2',)

    for v in variables:
        self.fields[v] = forms.CharField(label=v)

现在,我想将variables替换为json.variables值。我试过这个:self.fields['json'].initialself.fields['json'].dataself.fields['json'].cleaned_data没有成功。

您知道我怎样才能访问模型值?

1 个答案:

答案 0 :(得分:0)

最后,解决方案非常简单。我们只需使用self.instance.json