Стандартным способом является создание подкласса AuthenticationForm, изменение атрибутов в конструкторе, передача формы в представление входа в систему и запись новой записи в urls.py.
Это кошмар: для добавления атрибута html к полю необходимо использовать подклассы python, чтобы знать, как именно работает метакласс формы django (self.fields['field'].widget.attrs
, а не просто self.field.widget.attrs
), чтобы знатьregexes (для urls.py), чтобы узнать, как работает django urls.py (нужно ли поместить строку переопределения до или после include('django.contrib.auth.urls')
?) и узнать, откуда импортируются форма авторизации и представление авторизации.
А теперь «коммерческий перерыв»: просто используйте http://pypi.python.org/pypi/django-widget-tweaks для своей задачи;)