4

我对 Prisma 代码生成在生产中的工作方式感到困惑。Prisma CLI 应该安装在 devDependencies 中,但该npx prisma generate命令需要在生产中可用,因为生成的代码对于应用程序是必需的。我该如何解决这个问题?我尝试运行npm i --productionand npx prisma generate,这导致了 npx 尝试自动安装 prisma 并获取 Prisma 1 而不是 Prisma 2 然后期望一个不存在的 prisma.yml 文件的预期问题。

4

2 回答 2

2

无需运行prisma generate在安装@prisma/client.

编辑: https ://www.prisma.io/docs/reference/tools-and-interfaces/prisma-client/generating-prisma-client

于 2020-09-20T02:15:21.887 回答
0

Prisma 有各种安装指南,用于在不同的环境中安装。例如,这一篇谈到在 vercel 上安装。

https://www.prisma.io/docs/guides/deployment/deployment-guides/deploying-to-vercel

Postinstall hook package.json 使用 postinstall hook 脚本运行 prisma generate。通常这将在构建步骤中进行。因为 Vercel 在安装依赖项后缓存 node_modules,所以这些函数将无法访问生成的 Prisma 客户端。

在 postinstall 中生成 Prisma Client 可确保在 node_modules/@prisma/client 中生成的 Prisma Client 可用于函数。

于 2021-06-07T05:31:02.393 回答