Задать вопрос

Как кастомизировать форму регистрации в Django?

Всем привет.

Использую у себя на странице готовую форму регистрации:

{% csrf_token %}
{{ form.as_p }}
<input type="submit" value="Регистрация">


Расширил стандартную форму полем e-mail: (Хотя фактически просто добавил её в форму). Файл models.py

class UserCreationCustomForm(UserCreationForm):
    email = EmailField(required = True)

    class Meta:
        model = User
        fields = ("username", "email", "password1", "password2")

    def clean_password2(self):
        password1 = self.cleaned_data.get("password1")
        password2 = self.cleaned_data.get("password2")
        if password1 and password2 and password1 != password2:
            raise forms.ValidationError(
                self.error_messages['password_mismatch'],
                code='password_mismatch',
            )
        return password2

    def save(self, commit=True):
        user = super(UserCreationForm, self).save(commit=False)
        user.set_password(self.cleaned_data["password1"])
        if commit:
            user.save()
        return user


В итоге форма появляется с help_text, который я хотел бы поправить. Как это можно сделать?

download?id=yjvcJxDpVS4aDpQoLZy5GJe4AtGk
  • Вопрос задан
  • 1754 просмотра
Подписаться 5 Оценить Комментировать
Решения вопроса 1
un1t
@un1t
Вместо вывода целой формы
{{ form.as_p }}

можешь вывести отдельные поля и как угодно кастомизировать форму
{{ form.username }}
{{ form.username.errors }}

{{ form.email }}
{{ form.email.errors }}
..
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
Mr_Floppy
@Mr_Floppy
class Meta:
    ...
    help_texts = {
        'username': "Подсказка"
    }
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы