如何在Prisma Schema中合并两个枚举?类似TypeScript交叉类型
Prisma Schema 合并枚举的实现方式
Prisma Schema 目前不支持像 TypeScript 那样用扩展语法直接合并已有枚举,你示例里的 ...Enum1 这种写法在 Prisma 里是行不通的。
下面是两种可行的实现方式:
手动枚举所有值
直接把 Enum1 和 Enum2 的所有值逐一列在 Enum3 中,这是最直接的方案:enum Enum1 { value1, value2 } enum Enum2 { value3, value4 } enum Enum3 { value1, value2, value3, value4 }这种方式虽然有点繁琐,但完全符合 Prisma 的语法要求,能保证 Enum3 包含所有需要的枚举值。
用代码生成工具自动同步
如果枚举值需要频繁更新,手动维护容易出错,可以写个简单的脚本(比如 Node.js 脚本),读取 Prisma Schema 里的 Enum1 和 Enum2 的值,自动生成 Enum3 的代码。每次更新原枚举后,运行脚本就能同步 Enum3 的内容,省去手动复制的麻烦。
内容的提问来源于stack exchange,提问作者mccuna
相关产品推荐
相关产品推荐

