mirror of
https://github.com/beego/bee.git
synced 2024-12-22 20:20:49 +00:00
Merge pull request #56 from ZhengYang/master
Minor UX improvement before implementing pq
This commit is contained in:
commit
f850d0de5e
2
g.go
2
g.go
@ -23,7 +23,7 @@ var cmdGenerate = &Command{
|
||||
bee generate scaffold [scaffoldname] [-fields=""] [-driver=mysql] [-conn="root:@tcp(127.0.0.1:3306)/test"]
|
||||
The generate scaffold command will do a number of things for you.
|
||||
-fields: a list of table fields. Format: field:type, ...
|
||||
-driver: [mysql | postgresql | sqlite], the default is mysql
|
||||
-driver: [mysql | postgres | sqlite], the default is mysql
|
||||
-conn: the connection string used by the driver, the default is root:@tcp(127.0.0.1:3306)/test
|
||||
example: bee generate scaffold post -fields="title:string,body:text"
|
||||
|
||||
|
23
g_appcode.go
23
g_appcode.go
@ -25,6 +25,7 @@ import (
|
||||
"strings"
|
||||
|
||||
_ "github.com/go-sql-driver/mysql"
|
||||
_ "github.com/lib/pq"
|
||||
)
|
||||
|
||||
const (
|
||||
@ -197,13 +198,14 @@ func (tag *OrmTag) String() string {
|
||||
|
||||
func generateAppcode(driver, connStr, level, tables, currpath string) {
|
||||
var mode byte
|
||||
if level == "1" {
|
||||
switch level {
|
||||
case "1":
|
||||
mode = O_MODEL
|
||||
} else if level == "2" {
|
||||
case "2":
|
||||
mode = O_MODEL | O_CONTROLLER
|
||||
} else if level == "3" {
|
||||
case "3":
|
||||
mode = O_MODEL | O_CONTROLLER | O_ROUTER
|
||||
} else {
|
||||
default:
|
||||
ColorLog("[ERRO] Invalid 'level' option: %s\n", level)
|
||||
ColorLog("[HINT] Level must be either 1, 2 or 3\n")
|
||||
os.Exit(2)
|
||||
@ -215,6 +217,17 @@ func generateAppcode(driver, connStr, level, tables, currpath string) {
|
||||
selectedTables[v] = true
|
||||
}
|
||||
}
|
||||
switch driver {
|
||||
case "mysql":
|
||||
case "postgres":
|
||||
case "sqlite":
|
||||
ColorLog("[ERRO] Generating app code from SQLite database is not supported yet.\n")
|
||||
os.Exit(2)
|
||||
default:
|
||||
ColorLog("[ERRO] Unknown database driver: %s\n", driver)
|
||||
ColorLog("[HINT] Driver must be one of mysql, postgres or sqlite\n")
|
||||
os.Exit(2)
|
||||
}
|
||||
gen(driver, connStr, mode, selectedTables, currpath)
|
||||
}
|
||||
|
||||
@ -223,7 +236,7 @@ func generateAppcode(driver, connStr, level, tables, currpath string) {
|
||||
func gen(dbms, connStr string, mode byte, selectedTableNames map[string]bool, currpath string) {
|
||||
db, err := sql.Open(dbms, connStr)
|
||||
if err != nil {
|
||||
ColorLog("[ERRO] Could not connect to %s: %s\n", dbms, connStr)
|
||||
ColorLog("[ERRO] Could not connect to %s database: %s, %s\n", dbms, connStr, err)
|
||||
os.Exit(2)
|
||||
}
|
||||
defer db.Close()
|
||||
|
Loading…
Reference in New Issue
Block a user