cmd 自动生成结构

最后更新于:2022-04-02 02:47:33

[TOC] > [参考](https://github.com/go-xorm/cmd) ## 安装 ``` //xorm 工具 go get github.com/go-xorm/cmd/xorm ``` ## 概述 • 对于 sqlite 支持,您需要通过 go 生成 -标记 sqlite3 生成,因为此驱动程序会询问 cgo。 ## 接口说明 ``` -s Generated one go file for every table driverName Database driver name, now supported four: mysql mymysql sqlite3 postgres datasourceName Database connection uri, for detail infomation please visit driver's project page tmplPath Template dir for generated. the default templates dir has provide 1 template generatedPath This parameter is optional, if blank, the default value is models, then will generated all codes in models dir tableFilterReg Table name filter regexp ``` ## 使用 ### Reverse 把数据表转为go 结构体 ``` cd $GOPATH/src/github.com/go-xorm/cmd/xorm sqlite: xorm reverse sqite3 test.db templates/goxorm mysql: xorm reverse mysql root:12345678@[ip:port]/xorm_test?charset=utf8 templates/goxorm mymysql: xorm reverse mymysql xorm_test2/root/ templates/goxorm postgres: xorm reverse postgres "dbname=xorm_test sslmode=disable" templates/goxorm mssql: xorm reverse mssql "server=test;user id=testid;password=testpwd;database=testdb" templates/goxorm ``` ## 自定义输出模版 默认模版输出 表明与字段名都为 下划线转大小写如 `im_msg -> imMsg`,如果想修改为下划线的大写 templates/goxorm/struct.go.tpl 把所有的`Mapper`转为`UpperTitle`
';