package comm import ( _ "github.com/go-sql-driver/mysql" gocloud "github.com/mgr9525/go-cloud" "github.com/xormplus/xorm" "gopkg.in/mgo.v2" ) var ( DbMain *xorm.Engine DbMongo *mgo.Session ) func InitDb() error { err := initDbMain() if err != nil { return err } err = initDbMongo() if err != nil { return err } return nil } func initDbMain() error { cnf := gocloud.CloudConf.Datasorce["main"] if !cnf.Enable { return nil } if len(cnf.Driver) <= 0 || len(cnf.Url) <= 0 { return nil } db, err := xorm.NewEngine(cnf.Driver, cnf.Url) if err != nil { return err } err = db.RegisterSqlTemplate(xorm.Pongo2("./../sqltpls", ".stpl")) if err != nil { println("db RegisterSqlTemplate error : " + err.Error()) } DbMain = db return nil } func initDbMongo() error { cnf := gocloud.CloudConf.Datasorce["mongo"] if !cnf.Enable { return nil } if len(cnf.Driver) <= 0 || len(cnf.Url) <= 0 { return nil } db, err := mgo.Dial(cnf.Url) if err != nil { return err } DbMongo = db return nil }