覆盖Mezzanine中的ProfileForm字段

时间:2014-10-01 19:57:15

标签: django mezzanine

我有一个用户配置文件ManyToManyField,默认情况下,呈现为多选。在用户的个人资料页面上,我想用TextInput字段覆盖它,我可以添加自动完成jquery,但是我很难看到在Mezzanine中这样做的地方。

TIA, 乔尔

1 个答案:

答案 0 :(得分:0)

这是一个Django问题而不是夹层问题:

小部件是您需要设置的内容。

您将需要一个表单定义,您没有提及。在表单定义中覆盖默认小部件部分,如下所示。你也可以在这里添加类defs等等。

field_name = forms.CharField(widget=forms.TextInput(attrs={'style': 'display:block;','class': 'form-control'}),required=True)

也可以在声明之后完成:

field_name.widget = forms.TextInput()

也可以在表单类中的 init 中完成:

def __init__(self, *args, **kwargs):
    self.fields['field_name'].widget = forms.TextInput()

更多信息: https://docs.djangoproject.com/en/1.7/ref/forms/widgets/