我正在尝试在我的Django项目中使用Parsley.js进行验证。我目前正处于尝试将必要的Parsley属性添加到表单字段的步骤。希望这是正确的,但有人告诉我,我需要将属性传递给现有表单字段中的小部件。
email = forms.EmailField(widget=forms.TextInput(attrs=dict(attrs_dict,
maxlength=75)),label=_("Email"))
我的问题是如何正确地将属性传递给表单小部件,以便我可以使用parsley.js验证此表单字段?我在下面捅了一下,但我知道这是不正确的。
email = forms.EmailField(widget=forms.TextInput(attrs=dict(attrs_dict,
maxlength=75, data-required="true", data-trigger="keyup")), label=_("Email"))
答案 0 :(得分:0)
覆盖表单类中的__init__
函数可能是最佳选择......
class YourClass(ModelForm):
def __init__(self, *args, **kwargs):
self.fields['yourfield'].widget.attrs.update({'yourattribute': 'yourattributevalue'})
答案 1 :(得分:0)
您应该能够将属性直接传递给字段声明,如下所示:
email = forms.EmailField(widget=forms.TextInput(attrs={'data-trigger':'keyup', 'data-required' : 'true'}), maxlength=75, label=_("Email"))
有关详细信息,请参阅django表单widget attrs文档:https://docs.djangoproject.com/en/dev/ref/forms/widgets/#django.forms.Widget.attrs