Django重新形成了领域?

时间:2009-08-08 16:59:26

标签: django django-forms

我有一个表格,但是我需要重新填写表格字段,请问有些人会告诉我怎么样?我尝试使用fields = ['x','y'],但没有任何事情发生。

class DiligenciaForm(ModelForm):
    titulo = forms.CharField(max_length=70,help_text='Dele un nombre a su diligencia.')
    tipo = forms.ChoiceField(choices=TIPO)  
    vias= forms.TypedChoiceField(widget=forms.RadioSelect(), choices=CHOICES)    



class Meta:
    model = Diligencia
    exclude =('socio','secuencia','ffin','fecha','fentrada','status')
    fields = ['titulo', 'tipo','vias']

我需要这个orden“titulo”,“tipo”和“vias”......但是不能正常工作

谢谢

1 个答案:

答案 0 :(得分:1)

我认为你的意思是你需要重新排序表格?我在您的代码中看到的唯一问题是您在Meta类中同时具有排除和字段设置。另外(虽然在你的代码中可能不是这种方式)缩进是错误的。所以,修复后,它看起来像这样:

class DiligenciaForm(ModelForm):
    titulo = forms.CharField(max_length=70, help_text='Dele un nombre a su diligencia.')
    tipo = forms.ChoiceField(choices=TIPO)  
    vias= forms.TypedChoiceField(widget=forms.RadioSelect(), choices=CHOICES)    

    class Meta:
        model = Diligencia
        fields = ['titulo', 'tipo', 'vias',]

现在,如果您需要重新排序字段,只需将'fields'变量中的顺序更改为您想要的任何内容。还要确保你正在运行Django 1.1版,因为文档似乎表明在该版本中引入了重新排序字段的能力(见这里:http://docs.djangoproject.com/en/dev/topics/forms/modelforms/#using-a-subset-of-fields-on-the-form