GoForum › 🌐 V2EX
如何优雅地使用 zod
FlashEcho ·
2026-01-06 10:53 ·
0 次点赞 · 0 条回复
使用 zod 的时候,下面几个很难受的地方:
数据库的 orm 框架用的是 drizzle ,这个时候得先用 drizzle 定义数据库 schema ,没法优先使用 zod 定义 schema ,导出成 drizzle 数据库表
由于在数据库端 drizzle 优先了,在后端服务端有两种选择:
- 直接用 drizzle-zod 导出的 insert, select 等 schema ,后端服务直接用这个导出的 schema ,这样最方便,但是这个 schema 无形中变宽松了,有大量 optional ,而且如果有多种 insert 情况,就失去了严格的约束
- 再在后端手写一套 zod schema ,但是这样就会有大量重复和冗余,而且程序员需要自己手动维护 zod schema 和数据库 schema 的同步。这实际上是一个逻辑或者说业务上的实体,但是没法从一个唯一来源只写一次导出到处用,在服务和数据库上重复写了两次,也很难受
请问各位大佬是怎么处理这种问题的
0 条回复
添加回复
你还需要 登录
后发表回复