0Pricing
Go Academy · Ders

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ır
  • email - geçerli e-posta biçimi
  • min / max - uzunluk veya sayısal sınırlar
  • gte / lte - sayısal karşılaştırmalar
  • oneof - 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 validate etiketini 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

  1. Struct Etiketleri Nedir
  2. JSON Etiketleri
  3. Doğrulama Kütüphaneleri
  4. Özel Etiket Ayrıştırma
← Go Academy Sayfasına Dön