12345678910111213141516171819202122232425 |
- package validators
- import (
- "reflect"
- "strings"
- "gopkg.in/go-playground/validator.v9"
- )
- // NotBlank is the validation function for validating if the current field
- // has a value or length greater than zero, or is not a space only string.
- func NotBlank(fl validator.FieldLevel) bool {
- field := fl.Field()
- switch field.Kind() {
- case reflect.String:
- return len(strings.TrimSpace(field.String())) > 0
- case reflect.Chan, reflect.Map, reflect.Slice, reflect.Array:
- return field.Len() > 0
- case reflect.Ptr, reflect.Interface, reflect.Func:
- return !field.IsNil()
- default:
- return field.IsValid() && field.Interface() != reflect.Zero(field.Type()).Interface()
- }
- }
|