1.拉代码
git clone git@github.com:xxjwxc/gormt.git
2.下载依赖
go mod download
3.将编译后的二进制文件保存到PATH里面
mv gormt /usr/local/bin/gormt
4.在执行目录编辑config.yml文件
base:
is_dev : false
out_dir : ./model # 输出目录
url_tag : json # web url tag(json,db(https://github.com/google/go-querystring))
language : # 语言(English,中 文)
db_tag : gorm # 数据库标签(gorm,db)
singular_table : true # 单表模式:true:禁用表名复数,false:采用表名复数 参考:gorm.SingularTable
simple : false # 简单输出(默认gorm标签不输出)
is_out_sql : false # 是否输出 sql 原信息
is_out_func : true # 是否输出 快捷函数
is_web_tag : true # 是否打web标记(json标记前提条件)
is_web_tag_pk_hidden: true # web标记是否隐藏主键
is_foreign_key : true # 是否导出外键关联
is_gui : false # 是否ui模式显示
is_table_name : false # 是否直接生成表名函数
is_null_to_point : false # 数据库默认 'DEFAULT NULL' 时设置结构为指针类型
mysql_info:
host : rm-2zxxxxa8o.mysql.rds.aliyuncs.com
port : 3306
username : roxxxye
password : lichaxxx00!
database : test
5.执行gormt 会在配置文件out_dir配置的目录生成文件
├── gen.base.go
├── testtable.gen.iotdata.go
├── testtable.go
└── oauth_db.go
其中testtable.go是sql映射的struct文件
grommysql连接
gorm 文档:http://gorm.book.jasperxu.com/
import _ "github.com/go-sql-driver/mysql"
import "github.com/jinzhu/gorm"
var db *gorm.DB
//mysql 连接初始化
func init() {
args := "root:lichao055@tcp(rm-2zeyj40g836rlmboa8oxxx.mysql.rds.aliyuncs.com:3306)/testdb?charset=utf8&parseTime=true"
var err error
db, err = gorm.Open("mysql", args)
if err != nil {
panic("failed to connect database, err: " + err.Error())
}
db.SingularTable(true)
//自动迁移为给定模型运行自动迁移,只会添加缺失的字段,不会删除/更改当前数据
db.AutoMigrate(&TestTable{})
}
网友评论