Перейти к основному содержанию

Встроенные валидаторы

Termos предоставляет широкий набор встроенных валидаторов.

Базовые валидаторы

Required

Проверяет, что поле не пустое:
v.Required()

MinLength / MaxLength

Проверка минимальной и максимальной длины:
v.MinLength(5)    // минимум 5 символов
v.MaxLength(100)  // максимум 100 символов
v.Length(8)       // точно 8 символов

Сетевые валидаторы

Email

Проверка корректности email адреса:
v.Email()
v.OptionalEmail() // необязательный email

URL

Проверка корректности URL:
v.URL()
v.OptionalURL() // необязательный URL

IP Address

Проверка IP адресов (v4 и v6):
v.IP()    // любой IP
v.IPv4()  // только IPv4
v.IPv6()  // только IPv6

Domain

Проверка доменных имен:
v.Domain()

Port

Проверка номера порта (1-65535):
v.Port()

Числовые валидаторы

Range

Проверка диапазона чисел:
v.Range(1, 100)    // от 1 до 100
v.Min(0)           // минимум 0
v.Max(1000)        // максимум 1000

Строковые валидаторы

AlphaNumeric

Только буквы и цифры:
v.AlphaNumeric()

Username

Проверка имени пользователя:
v.Username() // буквы, цифры, подчеркивания

Валидаторы паролей

StandardPassword

Стандартный пароль (минимум 8 символов):
v.StandardPassword()

StrongPassword

Сильный пароль (минимум 12 символов, разные типы символов):
v.StrongPassword()

Пример использования

task := termos.NewInputTask("Email", "Введите email:")
    .WithValidator(v.Email())
I