0
class EditAdminForm(forms.ModelForm):
    password = username.CharField(widget=forms.TextInput())
    password = forms.CharField(widget=forms.PasswordInput())
    password_confirm = forms.CharField(widget=forms.PasswordInput(), initial=???)

你可以在这里看到我想要做什么。我将如何预先填充 pasword_confirm 字段(它不是模型的一部分)。我很混乱。

4

2 回答 2

2

您无法在表单声明中访问该实例,因为在您实例化它之前没有一个。

但是,如果您只想设置动态初始数据,请使用initial实例化参数执行此操作:

form = EditAdminForm(initial={'password':'abcdef'})
于 2009-06-25T06:29:53.067 回答
0

您可以__init__在 EditAdminForm 中定义方法。

就像是:

class EditAdminForm(forms.ModelForm):
    username = forms.CharField(widget=forms.TextInput())
    password = forms.CharField(widget=forms.PasswordInput())
    def __init__(self, initial_from, data=None, initial=None)
        sefl.fields['password_confirm'] = forms.CharField(widget=forms.PasswordInput(), initial=initial_from)
于 2009-06-24T21:46:28.540 回答