Ana içeriğe atla

Documentation Index

Fetch the complete documentation index at: https://ziva.zeleza.ru/llms.txt

Use this file to discover all available pages before exploring further.

Doğrulama Sistemi

Ziva, InputTask’ta kullanıcı girişini kontrol etmek için güçlü ve esnek bir doğrulama sistemi sağlar.

Temel Kavramlar

Doğrulaycı Arayüzü

type Validator interface {
    Validate(input string) error
}

Doğrulamayı Uygulama

input := ziva.NewInputTask("Email", "Email girin:").
    WithValidator(ziva.DefaultValidators.Email())

Yerleşik Doğrulaycılar

Temel Doğrulaycılar

v := ziva.DefaultValidators

// Zorunlu alan (boş olmamalı)
validator := v.Required()

// Minimum uzunluk
validator = v.MinLength(5)

// Maksimum uzunluk
validator = v.MaxLength(20)

// Tam uzunluk
validator = v.Length(8)

// Sayısal aralık
validator = v.Range(1, 100)

Format Doğrulaycıları

// Email adresi
validator := v.Email()

// İsteğe bağlı email (boş olabilir)
validator = v.OptionalEmail()

// URL adresi
validator = v.URL()

// Sadece harf ve rakam
validator = v.AlphaNumeric()

// Kullanıcı adı
validator = v.Username()

// Dosya/dizin yolu
validator = v.Path()

Ağ Doğrulaycıları

// IP adresi (IPv4 veya IPv6)
validator := v.IP()

// Sadece IPv4
validator = v.IPv4()

// Sadece IPv6
validator = v.IPv6()

// Domain adı
validator = v.Domain()

// Port (1-65535)
validator = v.Port()

Şifre Doğrulaycıları

// Standart şifre (minimum 8 karakter)
validator := v.StandardPassword()

// Güçlü şifre (minimum 12 karakter, harf, rakam, sembol)
validator = v.StrongPassword()

Kullanım Örnekleri

Email Doğrulama

emailTask := ziva.NewInputTask("Email", "Email adresinizi girin:").
    WithValidator(ziva.DefaultValidators.Email())

queue := ziva.NewQueue("Kayıt")
queue.AddTasks(emailTask)
queue.Run()

fmt.Printf("Email: %s\n", emailTask.GetValue())

Şifre Doğrulama

passwordTask := ziva.NewInputTask("Şifre", "Şifre girin:").
    WithInputType(ziva.InputTypePassword).
    WithValidator(ziva.DefaultValidators.StrongPassword())

queue := ziva.NewQueue("Güvenlik")
queue.AddTasks(passwordTask)
queue.Run()

fmt.Println("Şifre ayarlandı")