关于schema.prisma中数据源db的URL拼接配置问题
问题解答
你这种直接用+拼接字符串的写法不可行,Prisma的schema配置语法不支持这种字符串拼接方式。
如果不想单独设置DATABASE_URL环境变量,你可以用Prisma支持的环境变量插值语法来实现URL拼接,直接在字符串中嵌入环境变量即可,正确写法如下:
datasource db { provider = "postgresql" url = "postgresql://${env("PG_USER")}:${env("PG_PASS")}@${env("PG_HOST")}:${env("PG_PORT")}/${env("PG_DATABASE")}?schema=public" }
注意事项:
- 确保
PG_USER、PG_PASS、PG_HOST、PG_PORT、PG_DATABASE这些环境变量已正确配置(可以在系统环境变量或项目根目录的.env文件中设置),Prisma会自动读取这些变量。 - 这种插值语法是Prisma官方支持的,能直接在schema文件中完成URL拼接,无需额外定义
DATABASE_URL。
内容的提问来源于stack exchange,提问作者Hikaru Yasumoto
相关产品推荐
相关产品推荐

