xo
是一个 Go 工具,用于生成从数据库表到 Go 结构体的代码。它可以自动为表生成对应的结构体和方法,并支持许多自定义选项。
- 安装
xo
工具
go install github.com/xo/xo@latest
配置
xo
生成代码xo
工具提供了多种选项来生成代码,包括指定表、数据库连接和字段标签格式。你可以通过命令行参数来指定这些选项。示例命令
假设你有一个 PostgreSQL 数据库,并且你只想生成名为
notifications
表的结构体,且字段注释格式为json:"field_name"
,可以使用以下命令:
xo --json tags \
--schema public \
--no-recurse \
--only notifications \
-o ./models \
postgres://username:password@localhost:5432/database_name
命令说明
--json tags
:生成 JSON 标签。xo
支持多种标签格式,包括json:"field_name"
。--schema public
:指定数据库模式(schema)。默认为public
。--no-recurse
:防止递归生成所有表。如果只指定了--only
,可以省略。--only notifications
:只生成notifications
表的结构体。-o ./models
:指定生成的代码目录。postgres://username:password@localhost:5432/database_name
:数据库连接字符串。