Удалите обязательную метку поля «Это поле является обязательным». и исправьте ошибку с помощью «clean_email»Python

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Удалите обязательную метку поля «Это поле является обязательным». и исправьте ошибку с помощью «clean_email»

Сообщение Anonymous »

Я использую встроенную в Django «UserCreationForm» для создания регистрационной формы, но есть ненужные инструкции «Это поле является обязательным». что эти поля обязательны, хочу их удалить, помогите пожалуйста или хотя бы переведите на русский, чтобы надпись была на русском, если можете, также помогите исправить clean_email в формах, чтобы он не всегда это выкидывал надпись после 1 тестовой записи существующего электронного письма вот скриншот результата
RegisterUserForm
views.py:

Код: Выделить всё

class RegisterUser(CreateView):
form_class = RegisterUserForm
template_name = 'users/register.html'
extra_context = {'title': 'Регистрация'}
get_success_url = reverse_lazy('users:login')
forms.py:

Код: Выделить всё

class RegisterUserForm(UserCreationForm):
username = forms.CharField(label="Логин:", widget=forms.TextInput(attrs={'class': "form-input"}))
password1 = forms.CharField(label="Пароль:", widget=forms.PasswordInput(attrs={'class': "form-input"}))
password2 = forms.CharField(label="Повтор пароля:", widget=forms.PasswordInput(attrs={'class': "form-input"}))

class Meta:
model = get_user_model()
fields = {'username', 'email', 'first_name', 'last_name', 'password1', 'password2'}
labels = {
'username': 'Логин:',
'email': 'E-mail:',
'first_name': 'Имя:',
'last_name': 'Фамилия:',
'password1': 'Пароль:',
'password2': 'Повторить пароль:',
}
widgets = {
'username': forms.TextInput(attrs={'class': "form-input"}),
'first_name': forms.TextInput(attrs={'class': "form-input"}),
'last_name': forms.TextInput(attrs={'class': "form-input"}),
}

def __init__(self, *args, **kwargs):
super().__init__(*args, **kwargs)
self.order_fields(['username', 'email', 'first_name', 'last_name', 'password1', 'password2'])

def clean_email(self):
email = self.cleaned_data['email']
if get_user_model().objects.filter(email=email).exists():
raise forms.ValidationError(("E-mail должен быть уникальным!"), code="invalid")
return email
users/register.html:

Код: Выделить всё

{% extends 'users/base.html' %}

{% block title %}Регистрация{% endblock %}

{% block content %}
Регистрация

{% csrf_token %}
{% for f in form %}
{{ f.label }} {{ f }}
{{ f.errors }}
{% endfor %}
Регистистрация

{% endblock %}
Я пользовался ИИ и смотрел видео, но видимо ни у кого этот вопрос все это время не возникал в голове. Я уверен, что это очень легко сделать, но я не знаю как.

Подробнее здесь: https://stackoverflow.com/questions/793 ... e-bug-with
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «Python»