Files
go-omni/examples/copying/README.md

1.1 KiB
Raw Blame History

结构复制示例

在框架仓库根目录运行 go run ./examples/copying;不需要数据库、网络服务或 JSON 映射配置。

示例包含:可复用构造器、Go 字段改名、时间自定义转换、保留 false、深拷贝切片、同类型 Clone,以及拒绝自定义转换器返回输入的原切片。

预期输出:

name=sample enabled=false time=2026-01-01T00:00:00Z sourceTag=original
clone detached: true
shared converter rejected: true

测试:go test -race ./examples/copying。完整策略、限制与旧生成映射迁移见 COPY.md。

独立工资三端的实际生成、HTTP 与金额用例见 集成测试 和 公共契约。框架根目录运行:

GO_OMNI_SCAFFOLD_INTEGRATION=1 go test ./cmd/go-omni/apigen -run TestCopyxThreeEndpointConsumer -count=1

该测试在临时独立项目中执行,三个入口共用一个普通 Go copyx helper。公共字段新增时,只修改公共契约和独立业务结构,三个入口的转换规则不增加。