增加默认表达式生成方法,同时支持自定义表达式生成方法,覆盖默认行为
This commit is contained in:
parent
978e52089c
commit
064f5e2c5b
35
v10/default.go
Normal file
35
v10/default.go
Normal file
@ -0,0 +1,35 @@
|
||||
// Package v10 ...
|
||||
//
|
||||
// Description : v10 ...
|
||||
//
|
||||
// Author : go_developer@163.com<白茶清欢>
|
||||
//
|
||||
// Date : 2025-01-24 10:32
|
||||
package v10
|
||||
|
||||
import (
|
||||
"errors"
|
||||
"fmt"
|
||||
"git.zhangdeman.cn/zhangdeman/consts"
|
||||
"strings"
|
||||
)
|
||||
|
||||
// DefaultValidateRuleGenerateFunc 验证规则生成的默认方法
|
||||
//
|
||||
// Author : go_developer@163.com<白茶清欢>
|
||||
//
|
||||
// Date : 10:33 2025/1/24
|
||||
func DefaultValidateRuleGenerateFunc(validateRule consts.ValidatorRule, paramList ...any) (express string, err error) {
|
||||
ruleConfig := validateRule.Config()
|
||||
if len(ruleConfig.ValidatorRule.String()) == 0 {
|
||||
return "", errors.New("validate rule is empty")
|
||||
}
|
||||
if len(paramList) == 0 {
|
||||
return ruleConfig.ValidatorRule.String(), nil
|
||||
}
|
||||
paramStrList := make([]string, 0)
|
||||
for _, param := range paramList {
|
||||
paramStrList = append(paramStrList, fmt.Sprintf("%v", param))
|
||||
}
|
||||
return ruleConfig.ValidatorRule.String() + "=" + strings.Join(paramStrList, " "), nil
|
||||
}
|
25
v10/init.go
Normal file
25
v10/init.go
Normal file
@ -0,0 +1,25 @@
|
||||
// Package v10 ...
|
||||
//
|
||||
// Description : v10 ...
|
||||
//
|
||||
// Author : go_developer@163.com<白茶清欢>
|
||||
//
|
||||
// Date : 2025-01-24 11:09
|
||||
package v10
|
||||
|
||||
import "git.zhangdeman.cn/gateway/validator/v10/abstract"
|
||||
|
||||
// validatorRuleExpressGenerateFunc 验证规则表达式生成方法
|
||||
var validatorRuleExpressGenerateFunc abstract.IValidateRuleGenerateFunc = DefaultValidateRuleGenerateFunc
|
||||
|
||||
// SetValidatorRuleExpressGenerateFunc 使用自定义的验证规则表达式函数覆盖默认的函数
|
||||
//
|
||||
// Author : go_developer@163.com<白茶清欢>
|
||||
//
|
||||
// Date : 11:11 2025/1/24
|
||||
func SetValidatorRuleExpressGenerateFunc(generateFunc abstract.IValidateRuleGenerateFunc) {
|
||||
if nil == generateFunc {
|
||||
return
|
||||
}
|
||||
validatorRuleExpressGenerateFunc = generateFunc
|
||||
}
|
Loading…
x
Reference in New Issue
Block a user