github.com/keysonZZZ/kmg@v0.0.0-20151121023212-05317bfd7d39/beegoBundle/command.go.bak (about) 1 package beegoBundle 2 3 import ( 4 "database/sql" 5 "fmt" 6 "github.com/astaxie/beego/orm" 7 "github.com/bronze1man/kmg/kmgConsole" 8 "github.com/bronze1man/kmg/kmgSql" 9 "os" 10 "github.com/bronze1man/kmg/kmgConfig" 11 ) 12 13 func AddCommandList() { 14 kmgConsole.AddCommandWithName("BeegoOrmCreateDb", createDbCmd) 15 kmgConsole.AddCommandWithName("BeegoOrmSyncDb", syncDbCmd) 16 } 17 18 func createDbCmd() { 19 //work around for container bug 20 DbConfig := kmgSql.GetDbConfigFromConfig(kmgConfig.DefaultParameter()) 21 22 db, err := sql.Open("mysql", DbConfig.GetDsnWithoutDbname()) 23 kmgConsole.ExitOnErr(err) 24 _, err = db.Exec(fmt.Sprintf("create database %s", DbConfig.DbName)) 25 kmgConsole.ExitOnErr(err) 26 } 27 28 func syncDbCmd() { 29 InitOrm() 30 //TODO register database config stuff. 31 os.Args = []string{ 32 os.Args[0], "orm", "syncdb", 33 } 34 orm.RunCommand() 35 }