prisma - 运行 graphql 查询时获取环境变量未找到错误消息

Posted

技术标签:

【中文标题】prisma - 运行 graphql 查询时获取环境变量未找到错误消息【英文标题】:prisma - getting environment variable not found error message when running graphql query 【发布时间】:2021-08-20 02:05:15 【问题描述】:

我在运行 GraphQL 查询时从 prisma 收到此错误消息。

Environment variable not found: DATABASE_URL.\n  -->  schema.prisma:6\n   | \n 5 |   provider = \"postgresql\"\n 6 |   url      = env(\"DATABASE_URL\")\n   | \n\nValidation Error Count: 1",

起初,我的任何项目文件夹中都没有 .env 文件,然后我将其添加到数据库 url 的链接中,但仍然无法正常工作。 这是文件夹结构:

这就是我在.env 文件中的样子 -

DATABASE_URL="postgres://postgres:mypassword@db.pqtgawtgpfhpqxpgidrn.supabase.co:5432/postgres"

【问题讨论】:

【参考方案1】:

像我这样的其他人(Prisma 的新手,遵循 Remix.run 笑话应用程序教程)可能会松了一口气,了解到不仅仅是您:Prisma 3.9.0 中存在回归,并于 2022 年 2 月初在 3.9.1 中修复.https://github.com/prisma/prisma/issues/11570

“prisma db pull 未读取 .env 文件并且未找到环境变量的错误:DATABASE_URL”

【讨论】:

【参考方案2】:

在我的例子中,我想使用 NextJS 运行 Prisma Studio,它将所有环境变量存储在 .env.local 中,所以我需要先加载文件。

npm install -g dotenv-cli
dotenv -e .env.local -- npx prisma studio

这里是官方Prisma docs 的链接,了解如何手动加载.env 文件。

【讨论】:

【参考方案3】:

如果有人遇到此问题,请运行 npx prisma generate。这将重新建立 schema.prisma 和 .env 文件之间的链接。

【讨论】:

太棒了!遇到了一些麻烦。完美运行! 为我工作! ty 不幸的是,我运气不好。 你应该喝啤酒或咖啡! 对我来说,原来我有 DATABASE_URL="my value 并且忘记了结束双引号!所以该值不“存在”,因为 dotenv 由于我的错误而无法正确解析它。

以上是关于prisma - 运行 graphql 查询时获取环境变量未找到错误消息的主要内容,如果未能解决你的问题,请参考以下文章

无法通过 Prisma 在 GraphQL-yoga 中使用片段

使用 GraphQL、Nexus 和 Prisma 优化 SQL 查询

将 GraphQL/Prisma 字段设为私有/无法查询

Prisma graphql 计算域

注册突变时的 Prisma graphql 错误

Prisma graphql updateNode 突变