增加 ValidatorRule.IsValid 方法

This commit is contained in:
白茶清欢 2025-01-24 18:44:01 +08:00
parent d0dbba0156
commit 5d23a5428f

View File

@ -22,6 +22,19 @@ func (vr *ValidatorRule) MarshalJSON() ([]byte, error) {
return []byte(vr.String()), nil
}
// IsValid 验证规则是否有效
func (vr *ValidatorRule) IsValid() bool {
_, exist := ValidatorRuleSupportDataTypeTable[*vr]
if !exist {
return false
}
rule := ValidatorRuleSupportDataTypeTable[*vr].ValidatorRule
if vr.String() != (&rule).String() {
return false
}
return exist
}
// Config 验证规则的配置
//
// Author : go_developer@163.com<白茶清欢>
@ -538,3 +551,12 @@ var (
ValidatorRuleFormatterLowercase ValidatorRule = "lowercase" // 仅包含小写字符
ValidatorRuleFormatterUppercase ValidatorRule = "uppercase" // 仅包含大写字符
)
// RegisterCustomValidatorRule 注册自定义的验证方法, 允许通过此函数, 覆盖内部默认的配置
//
// Author : go_developer@163.com<白茶清欢>
//
// Date : 18:35 2025/1/24
func RegisterCustomValidatorRule(rule ValidatorRule, validatorRuleConfig ValidatorRuleConfig) {
ValidatorRuleSupportDataTypeTable[rule] = validatorRuleConfig
}