Skip to main content
 首页 » 编程设计

python之如何从 django forms.Form 中排除字段

2024年08月12日33dudu

我想这是我正在努力寻找答案的另一个关于 django 表单的简单问题。

假设我有以下内容

class Form1(forms.Form): 
    a=forms.CharField( label=_("A"),max_length=40) 
    b=forms.CharField( label=_("B"),max_length=40) 
 
class Form2(forms.Form): 
   c=forms.CharField( label=_("C"),max_length=40) 
   d=forms.CharField( label=_("D"),max_length=40) 
 
class Form3(Form1,Form2): 
 
    def __init__(self, *args, **kw): 
        Form1.__init__(self,*args, **kw) 
        Form2.__init__(self,*args, **kw) 
 
#Here I don't want to have a from Form1 
# how can I exclude it so that validation does not bark?? 

我在 Form3 中定义的 Meta 类中尝试了 exclude=(a,) 但不起作用,表单验证一直失败。

提前致谢

请您参考如下方法:

你试过吗:

def __init__(self, *args, **kwargs): 
    super(Form3, self).__init__(*args, **kwargs) 
    del self.fields['a']