don't panic but return nil when query dialect

This commit is contained in:
Lunny Xiao 2017-01-03 14:17:17 +08:00
parent 87aca22337
commit 60b1704516
No known key found for this signature in database
GPG Key ID: C3B7C91B632F738A
1 changed files with 6 additions and 1 deletions

View File

@ -290,6 +290,7 @@ var (
dialects = map[DbType]func() Dialect{}
)
// RegisterDialect register database dialect
func RegisterDialect(dbName DbType, dialectFunc func() Dialect) {
if dialectFunc == nil {
panic("core: Register dialect is nil")
@ -297,6 +298,10 @@ func RegisterDialect(dbName DbType, dialectFunc func() Dialect) {
dialects[dbName] = dialectFunc // !nashtsai! allow override dialect
}
// QueryDialect query if registed database dialect
func QueryDialect(dbName DbType) Dialect {
return dialects[dbName]()
if d, ok := dialects[dbName]; ok {
return d()
}
return nil
}