Go-TestAPI/libs/libs.go

30 lines
542 B
Go

package libs
import (
"github.com/gin-gonic/gin"
"github.com/go-playground/validator/v10"
"strings"
)
func GetValidationErrors(errs validator.ValidationErrors) gin.H {
errors := make(map[string]any)
for _, err := range errs {
errors[err.Field()] = err.Error()
}
return gin.H{
"error": errors,
}
}
func ToSnakeCase(str string) string {
var result []rune
for i, r := range str {
if i > 0 && 'A' <= r && r <= 'Z' {
result = append(result, '_')
}
result = append(result, r)
}
return strings.ToLower(string(result))
}