go get github.com/alexndr54/goeasy-validator- import
import ("github.com/alexndr54/goeasy-validator/Validation"
"github.com/alexndr54/goeasy-validator/Validation/Helper"
)- Map And Map
data := map[string]interface{}{
"what": 32323,
}
rules := map[string]string{
"what": "only_letters",
}
result := Validation.NewSimpleValidator(data, rules)
if result != nil {
t.Error("Expected no errors, but got:", result)
} else {
t.Log("Validation passed, no errors found.")
}
atau
userData1 := map[string]interface{}{
"nama_depan": "Budi",
"email": "budi.santoso@example.com",
"kata_sandi": "Password123",
}
rules1 := map[string]string{
"nama_depan": "required|min:2",
"email": "required|email",
"kata_sandi": "required|password",
}
validator1 := Validation.NewValidator(userData1, rules1)
errors1 := validator1.Validate()
if errors1.HasErrors() {
for field, msgs := range errors1 {
for _, msg := range msgs {
fmt.Println("Field:", field);
fmt.Println("Pesan Error:", msg);
}
}
} else {
fmt.Println("Data pengguna 1 valid.")
}atau
data := map[string]interface{}{
"nama_lengkap": "awgfjjedugfjeJLGF",
"nama_lengkap2": "sad",
}
rules := map[string]string{
"nama_lengkap": "required|password|min:5",
"nama_lengkap2": "required|password|min:5",
}
simple := Validation.NewSimpleValidator(data, rules)
field, msg := Validation.NewSingleRuleValidator(data, rules)
fmt.Println(simple)
#Output: map[nama_lengkap:[Kata sandi harus mengandung setidaknya satu huruf besar, satu huruf kecil, dan satu angka.] nama_lengkap2:[Kata sandi harus mengandung setidaknya satu huruf besar, satu huruf kecil, dan satu angka.]]
fmt.Println(field, msg)
#Output: nama_lengkap Kata sandi harus mengandung setidaknya satu huruf besar, satu huruf kecil, dan satu angka.
- Rules
| Rules | Contoh Dan Keterangan |
|---|---|
| require | map[string]string{ "nama": "required" }, Wajib di isi |
| min:int | map[string]string{ "nama": "min:5" }, Ubah angka 5 dengan jumlah minimum |
| max:int | map[string]string{ "nama": "max:10" }, Ubah angka 10 dengan jumlah maksimal |
| only_letters | map[string]string{ "nama": "only_letters" }, Hanya boleh huruf besar & kecil |
| password | map[string]string{ "nama": "password" }, Yang di input wajib minimal 8 huruf dan mengandung huruf kecil, huruf besar, dan angka |
| map[string]string{ "nama": "email" }, Yang di input harus dalam format email |