DJANGO ВАЛИДАЦИЯ USERNAME

Django предоставляет удобный способ для валидации форм, в том числе и валидации имени пользователя (username). Для этого можно использовать класс UserCreationForm из модуля django.contrib.auth.forms.

В данном классе уже реализована валидация имени пользователя на уникальность. Также можно добавить дополнительные правила валидации, например, чтобы имя пользователя содержало только буквы и цифры:

class CustomUserCreationForm(UserCreationForm):
    class Meta:
        model = User
        fields = ['username', 'email','password1', 'password2']
    def clean_username(self):
        username = self.cleaned_data.get('username')
        if not username.isalnum():
            raise forms.ValidationError("The username should contain only letters and numbers.")
        return username

В данном примере мы создали класс CustomUserCreationForm, который наследуется от класса UserCreationForm. Добавили поле email, что стандартной форме не имеет. Метод clean_username реализует валидацию на уникальность и проверку на наличие только букв и цифр в имени пользователя.

#26. Email validation - Unique Email - Django

Django. Урок 5. Формы, валидация форм

What is Manual Form Validation in Django (Complete Logic) - Tutorial for Beginners

Python Django Basic Forms and Validation

Built in Validators and Custom Validators in Django (Hindi)

#14. Формы, связанные с моделями. Пользовательские валидаторы - Django уроки

Django Authentication \u0026 User Management - Full Tutorial

#23. Form Validations - Django - Hindi

BLGPG-DEB1BB524748-24-09-20-01

Новые материалы: