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字段(不是模型的一部分)。我很困惑。
答案 0 :(得分:2)
您无法在表单声明中访问该实例,因为在您实例化之前没有实例。
但是,如果您只想设置动态初始数据,请在即时时使用initial
参数执行此操作:
form = EditAdminForm(initial={'password':'abcdef'})
答案 1 :(得分:0)
您可以在EditAdminForm中定义__init__
方法。
类似的东西:
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)