fix(i18n): use full language name as the translator key

This commit is contained in:
LinkinStar 2022-12-19 18:15:17 +08:00
parent 21e402cb8a
commit 305a50cee7
2 changed files with 8 additions and 8 deletions

View File

@ -52,7 +52,7 @@ func BindAndCheck(ctx *gin.Context, data interface{}) bool {
return true
}
errField, err := validator.GetValidatorByLang(lang.Abbr()).Check(data)
errField, err := validator.GetValidatorByLang(lang).Check(data)
if err != nil {
HandleResponse(ctx, err, errField)
return true
@ -70,6 +70,6 @@ func BindAndCheckReturnErr(ctx *gin.Context, data interface{}) (errFields []*val
return nil
}
errFields, _ = validator.GetValidatorByLang(lang.Abbr()).Check(data)
errFields, _ = validator.GetValidatorByLang(lang).Check(data)
return errFields
}

View File

@ -75,7 +75,7 @@ type FormErrorField struct {
}
// GlobalValidatorMapping is a mapping from validator to translator used
var GlobalValidatorMapping = make(map[string]*MyValidator, 0)
var GlobalValidatorMapping = make(map[i18n.Language]*MyValidator, 0)
func init() {
for _, t := range allLanguageTranslators {
@ -85,7 +85,7 @@ func init() {
panic(err)
}
}
GlobalValidatorMapping[t.La.Abbr()] = &MyValidator{Validate: val, Tran: tran, Lang: t.La}
GlobalValidatorMapping[t.La] = &MyValidator{Validate: val, Tran: tran, Lang: t.La}
}
}
@ -119,11 +119,11 @@ func createDefaultValidator(la i18n.Language) *validator.Validate {
return validate
}
func GetValidatorByLang(la string) *MyValidator {
if GlobalValidatorMapping[la] != nil {
return GlobalValidatorMapping[la]
func GetValidatorByLang(lang i18n.Language) *MyValidator {
if GlobalValidatorMapping[lang] != nil {
return GlobalValidatorMapping[lang]
}
return GlobalValidatorMapping[i18n.DefaultLanguage.Abbr()]
return GlobalValidatorMapping[i18n.DefaultLanguage]
}
// Check /