Doğrulama Kütüphaneleri
Struct'ları etiketlerle doğrulayın
Doğrulama Kütüphaneleri, CoddyKit'te ücretsiz bir Go Academy dersidir. Bu, 4 dersinin 3. dersidir. Aşağıdan dersin tamamını ücretsiz okuyabilir, sonra tarayıcıda yerleşik kod editörü ve 7/24 yapay zeka koçu ile uygulamalı olarak pratik yapabilirsin. Bu, Go Academy öğrenme yolunun bir parçasıdır ve ilerlemeniz web ve CoddyKit uygulaması arasında senkronize olur. Go Academy kursu toplamda 4 dersten oluşur.
Yapıları Neden Doğrulamalısınız
Gelen verileri (bir formdan veya API'den) kullanmadan önce çoğu zaman bunları kontrol etmeniz gerekir: zorunlu alanlar, geçerli e-posta adresi ve değer aralıkları. Doğrulama kitaplıkları bunu yapı etiketlerini kullanarak otomatikleştirir.
validate Etiketi
go-playground/validator gibi popüler kitaplıklar, her alan için kuralları açıklayan bir validate etiketini okur.
Bir alanda validate:"required,email" etiketi bulunabilir.
Harici Bağımlılık
Doğrulama kitaplıkları, standart kitaplıkta bulunmayan üçüncü taraf paketlerdir. Bunları go get github.com/go-playground/validator/v10 ile eklersiniz. Burada kendi başına çalışan bir kod parçacığında çalıştırılamazlar.
Kuralları Tanımlama
Her alanın validate etiketi, virgüllerle ayrılmış kuralları listeler. Yaygın kurallar şunlardır: required, email, min, max, len.
Örnek Yapı
Tipik bir doğrulanmış yapı. (Kavramsal bir örnektir; çalışması için doğrulama paketine ihtiyaç duyar.)
type SignupForm struct {
Email string "validate:\"required,email\""
Password string "validate:\"required,min=8\""
Age int "validate:\"gte=18,lte=120\""
}Doğrulamayı Çalıştırma
Bir doğrulayıcı örneği oluşturur ve Validate.Struct(form) çağrısını yaparsınız. Herhangi bir kural başarısız olursa bir hata, tüm kurallar geçerse nil döndürür.
import "github.com/go-playground/validator/v10"
var validate = validator.New()
func check(f SignupForm) error {
return validate.Struct(f)
}Hataları Okuma
Başarısızlık durumunda döndürülen hata, bozulmuş her kuralı açıklayan bir dizi olan validator.ValidationErrors türüne dönüştürülebilir: hangi alanın ve hangi kısıtlamanın başarısız olduğunu belirtir.
Yaygın Yerleşik Kurallar
Kullanışlı kurallardan bazıları şunlardır:
required- sıfır değer olmamalıdıremail- geçerli e-posta biçimimin/max- uzunluk veya sayısal sınırlargte/lte- sayısal karşılaştırmalaroneof- bir listedeki değerlerden biri olmalıdır
İç İçe Yapıları Doğrulama
Doğrulayıcılar iç içe yapılara otomatik olarak yinelemeli biçimde girer. Kendisi de bir yapı olan alanın kendi kuralları da denetlenir; böylece tüm nesne grafiği tek bir çağrıyla doğrulanır.
Neden Kitaplık Kullanmalısınız
Her alan için doğrulamayı elle yazmak zahmetli ve hataya açıktır. Etiket tabanlı doğrulama, kuralları bildirimsel tutar, alanların yanında tanımlar ve uygulamanız genelinde tutarlılık sağlar.
Elle Yapılan Alternatif
Basit durumlarda bir kitaplık kullanmadan elle doğrulama yapabilirsiniz; çok sayıda alan ve karmaşık kurallar için kitaplık kullanmak daha uygundur. Yalnızca standart kitaplığı kullandığı için bu yaklaşım her yerde çalışır.
package main
import (
"errors"
"fmt"
"strings"
)
func validateEmail(e string) error {
if !strings.Contains(e, "@") {
return errors.New("invalid email")
}
return nil
}
func main() {
fmt.Println(validateEmail("bad"))
fmt.Println(validateEmail("a@b.com"))
}Hızlı Kontrol
go-playground/validator gibi bir doğrulama kitaplığı her alana hangi kuralların uygulanacağını nasıl bilir?
Özet
Doğrulama kitaplıkları:
- Kuralları uygulamak için bir
validateetiketini okur - Üçüncü taraftır (örneğin go-playground/validator) ve go get aracılığıyla eklenir
- Başarısız olan her kuralı listeleyen hatalar döndürür
- Basit durumlar elle doğrulanabilir
Sıkça Sorulan Sorular
“Doğrulama Kütüphaneleri” dersi ücretsiz mi?
Evet — “Doğrulama Kütüphaneleri” dersin tüm metni burada web'de ücretsiz olarak okunabilir. Etkileşimli olarak pratik yapmak (yerleşik kod editörü ve 7/24 yapay zeka koçu) ve Go Academy kursunun geri kalanını açmak için CoddyKit PRO'ya yükselt. Go Academy kursu toplamda 4 dersten oluşur.
“Doğrulama Kütüphaneleri” dersinde ne öğreneceğim?
Struct'ları etiketlerle doğrulayın Go Academy ile uygulamalı kodu tarayıcıda doğrudan çalıştırarak pratik yaparsın ve 7/24 yapay zeka koçu dersi çalışırken sorularını yanıtlar.
Go Academy öğrenmeye başlamak için deneyim gerekli mi?
Önceden deneyim gerekmez. CoddyKit'te Go Academy, başlangıçtan ileri seviyeye kadar yapılandırıldığı için buradan başlayabilir veya başından başlayıp kendi hızında ilerleme yapabilirsin. Bu, 4 dersinin 3. dersidir.
“Doğrulama Kütüphaneleri” dersi ne kadar sürer?
Çoğu CoddyKit dersi yaklaşık 5–10 dakika sürer. Her biri kısa ve etkileşimli olduğu için sabit ilerleme yaparsın ve web ile uygulama arasında tam olarak bıraktığın yerden devam edebilirsin.
Bu Go Academy dersinde kod yazıp çalıştırabilir miyim?
Evet. Her Go Academy dersi yerleşik bir kod editörü içerir, bu sayede tarayıcıda gerçek kod yazıp çalıştırabilir ve anlık yapay zeka geri bildirimi alırsın — yerel kurulum gerekli değildir.
Bu kursun tüm dersleri
- Struct Etiketleri Nedir
- JSON Etiketleri
- Doğrulama Kütüphaneleri
- Özel Etiket Ayrıştırma