本文介绍了如何从子类的父窗体中删除字段?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
class LoginForm(forms.Form):
nickname = forms.CharField(max_length=100)
username = forms.CharField(max_length=100)
password = forms.CharField(widget=forms.PasswordInput)
class LoginFormWithoutNickname(LoginForm):
# i don't want the field nickname here
nickname = None #??
有没有办法实现这一目标?
注意:我没有 ModelForm
,所以 Meta
类具有排除
不起作用。
Note: i don't have a ModelForm
, so the Meta
class with exclude
doesn't work.
推荐答案
您可以更改通过重写 init 方法创建子类:
You can alter the fields in a subclass by overriding the init method:
class LoginFormWithoutNickname(LoginForm):
def __init__(self, *args, **kwargs):
super(LoginFormWithoutNickname, self).__init__(*args, **kwargs)
self.fields.pop('nickname')
这篇关于如何从子类的父窗体中删除字段?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!