Merge pull request #4017 from guhan121/fix#4000

Prohibit multiple calls SetDefaultMessage.
This commit is contained in:
Ming Deng 2020-06-26 17:49:36 +08:00 committed by GitHub
commit 8039cc8e59
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 10 additions and 3 deletions

View File

@ -16,9 +16,11 @@ package validation
import (
"fmt"
"github.com/astaxie/beego/logs"
"reflect"
"regexp"
"strings"
"sync"
"time"
"unicode/utf8"
)
@ -57,6 +59,8 @@ var MessageTmpls = map[string]string{
"ZipCode": "Must be valid zipcode",
}
var once sync.Once
// SetDefaultMessage set default messages
// if not set, the default messages are
// "Required": "Can not be empty",
@ -84,9 +88,12 @@ func SetDefaultMessage(msg map[string]string) {
return
}
for name := range msg {
MessageTmpls[name] = msg[name]
}
once.Do(func() {
for name := range msg {
MessageTmpls[name] = msg[name]
}
})
logs.Warn(`you must SetDefaultMessage at once`)
}
// Validator interface