繁体   English   中英

DJANGO-如何从表单内部访问当前模型实例

[英]DJANGO - How do you access the current model instance from inside a form

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字段(这不是模型的一部分)。 我很混乱。

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

但是,如果您要做的只是设置动态初始数据,请在initial化时使用initial参数来执行此操作:

form = EditAdminForm(initial={'password':'abcdef'})

您可以在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)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM