fix: allow driver options
This commit is contained in:
parent
c855ca4e59
commit
ab0036e93c
|
@ -51,7 +51,7 @@ type Engine struct {
|
||||||
|
|
||||||
// NewEngine new a db manager according to the parameter. Currently support four
|
// NewEngine new a db manager according to the parameter. Currently support four
|
||||||
// drivers
|
// drivers
|
||||||
func NewEngine(driverName string, dataSourceName string) (*Engine, error) {
|
func NewEngine(driverName string, dataSourceName string, driverOptions ...func(db *sql.DB) error) (*Engine, error) {
|
||||||
dialect, err := dialects.OpenDialect(driverName, dataSourceName)
|
dialect, err := dialects.OpenDialect(driverName, dataSourceName)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, err
|
return nil, err
|
||||||
|
@ -62,6 +62,12 @@ func NewEngine(driverName string, dataSourceName string) (*Engine, error) {
|
||||||
return nil, err
|
return nil, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if len(driverOptions) > 0 {
|
||||||
|
if err := driverOptions[0](db.DB); err != nil {
|
||||||
|
return nil, err
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
return newEngine(driverName, dataSourceName, dialect, db)
|
return newEngine(driverName, dataSourceName, dialect, db)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue