关于 xorm
xorm 是一组数据库操作命令行工具。支持多种特性,具体功能移步至github/go/xorm
使用 golang 操作数据库的同学都会遇到一个问题 —— 根据数据表结构创建对应的 struct 模型。久而久之,这是一个非常繁琐的过程。接下来便使用 xorm根据数据库表结构进行model 的 code 生成!
go get github.com/go-xorm/cmd/xorm
go get github.com/go-xorm/xorm
cd GOPATH/src/github.com/go-xorm/cmd/xorm
exec:
go build
根据 golang 版本不同有可能提示
go: inconsistent vendoring in /Users/zhuxiaojie/go/src/github.com/go-xorm/cmd/xorm:
run 'go mod vendor' to sync, or use -mod=mod or -mod=readonly to ignore the vendor directory
直接运行 go mod vendor
即可解决
接下来执行:./xorm reverse mysql root:password@test?charset=utf8 templates/goxorm
有的同学可能会遇到
reverse.go:196 Error 1045: Access denied for user '“root'@'172.17.0.1' (using password: YES)
因为mysql 运行在 docker 中,查看源码后其实只需要做出一下修改即可
./xorm reverse mysql "root:password@tcp(localhost:port)/db_name" templates/goxorm
接下来在当前目录models中生成数据库 model 文件。