pages/ja_JP/gen/gen_tool.md
Gen Tool is a single binary without dependencies can be used to generate structs from database
go install gorm.io/gen/tools/gentool@latest
gentool -h
Usage of gentool:
-c string
config file path
-db string
input mysql or postgres or sqlite or sqlserver. consult[https://gorm.io/docs/connecting_to_the_database.html] (default "mysql")
-dsn string
consult[https://gorm.io/docs/connecting_to_the_database.html]
-fieldNullable
generate with pointer when field is nullable
-fieldWithIndexTag
generate field with gorm index tag
-fieldWithTypeTag
generate field with gorm column type tag
-modelPkgName string
generated model code's package name
-outFile string
query code file name, default: gen.go
-outPath string
specify a directory for output (default "./dao/query")
-tables string
enter the required data table or leave it blank
-onlyModel
only generate models (without query file)
-withUnitTest
generate unit test for query code
-fieldSignable
detect integer field's unsigned type, adjust generated data type
Configuration file name, default value "", command line options have higher priority than configuration file.
Specify dirver dialector, default value "mysql", refer: https://gorm.io/docs/connecting_to_the_database.html
DSN that used to connect database, refer: https://gorm.io/docs/connecting_to_the_database.html
Generate with pointer when field is nullable
Generate field with gorm index tag
Generate field with gorm column type tag
Generated model code's package name.
Genrated query code file name, default: gen.go
Specify a directory for output (default "./dao/query")
Specify tables want to genrated from, default all tables.
eg :
--tables="orders" # generate from `orders`
--tables="orders,users" # generate from `orders` and `users`
--tables="" # generate from all tables
Generate some tables code.
Generate unit test, default value false, options: false / true
Use signable datatype as field type, default value false, options: false / true
gentool -dsn "user:pwd@tcp(localhost:3306)/database?charset=utf8mb4&parseTime=True&loc=Local" -tables "orders,doctor"
gentool -c "./gen.tool"
version: "0.1"
database:
# consult[https://gorm.io/docs/connecting_to_the_database.html]"
dsn : "username:password@tcp(address:port)/db?charset=utf8mb4&parseTime=true&loc=Local"
# input mysql or postgres or sqlite or sqlserver. consult[https://gorm.io/docs/connecting_to_the_database.html]
db : "mysql"
# enter the required data table or leave it blank.You can input : orders,users,goods
tables : "user"
# specify a directory for output
outPath : "./dao/query"
# query code file name, default: gen.go
outFile : ""
# generate unit test for query code
withUnitTest : false
# generated model code's package name
modelPkgName : ""
# generate with pointer when field is nullable
fieldNullable : false
# generate field with gorm index tag
fieldWithIndexTag : false
# generate field with gorm column type tag
fieldWithTypeTag : false