У меня есть регистрационная форма, и я использую Django-регистрацию. Теперь мне нужно добавить класс CSS для каждого поля. Кроме того, если есть ошибки проверки, класс css должен отличаться для полей, в которых есть ошибки. Как мне этого добиться?
class RegistrationForm(forms.Form):
"""
Form for registering a new user account.
Validates that the requested username is not already in use, and
requires the password to be entered twice to catch typos.
Subclasses should feel free to add any additional validation they
need, but should avoid defining a ``save()`` method -- the actual
saving of collected user data is delegated to the active
registration backend.
"""
error_css_class = 'error'
required_css_class='wanted'
email = forms.EmailField(widget=forms.TextInput(attrs=dict(maxlength=75)),
label=_("Email address"))
password1 = forms.CharField(widget=forms.PasswordInput(render_value=False),
label=_("Password"))
password2 = forms.CharField(widget=forms.PasswordInput(render_value=False),
label=_("Password (again)"))
В HTML-шаблоне я делаю
<div class="row">
<label for="id_email"><span>*</span> Email Address:</label>
{{ form.email }}
</div>
Примечание В конце концов, я использовал widget_tweaks, что позволило мне сделать
{{form.email|add_class:"blink"|add_error_class:"error"}}