package main
import (
"fmt"
_ "github.com/go-sql-driver/mysql"
"github.com/go-xorm/xorm"
"io/ioutil"
"os"
"strings"
)
var engine *xorm.Engine
func main() {
var err error
engine, err = xorm.NewEngine("mysql", "")
if err!=nil{
panic(err)
}
table,err :=engine.QueryString("show tables")
if err!=nil{
panic(err)
}
phpdemo:=ReadFile()
for _,j:=range table{
tableInfo,err:=engine.QueryString("show create table "+j["Tables_in_schooltest_hanmo"])
if err!=nil{
panic(err)
}
for _,w:=range tableInfo {
//fmt.Println(w["Create Table"])
//fmt.Println(w["Table"],"----------")
fmt.Println(getTableName(w["Table"]))
str:=fmt.Sprintf(phpdemo,getTableName(w["Table"]),w["Table"],w["Create Table"])
fmt.Println(str)
WriteFile("./"+getTableName(w["Table"])+".php",[]byte(str))
}
}
}
func PathExists(path string) (bool, error) {
_, err := os.Stat(path)
if err == nil {
return true, nil
}
if os.IsNotExist(err) {
return false, nil
}
return false, err
}
func getTableName(str string)string{
re:=strings.Split(str,"_")
var tableName string
len:=len(re)
for i:=1;i<len;i++{
tableName+=strings.Title(re[i])
}
tableName+="Model"
return tableName
}
func WriteFile(path string,by []byte)bool{
re,_:=PathExists(path)
if re==false{
err:=ioutil.WriteFile(path,by,os.ModePerm)
if err!=nil{
panic(err)
}
return true
}
return false
}
func ReadFile() string{
str,_:=ioutil.ReadFile("./demo.php")
return string(str)
}
golang 生成tpmodel
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.