无法连接到atlas上的mongodb服务器。得到这个错误error: Error validating datasource db: the URL must start with the protocol mongo.
但是,如果我只是将连接字符串直接放入url
而不是env("DATABASE_URL")
,那么它就可以工作了。
datasource db {
provider = "mongodb"
url = env("DATABASE_URL")
}
.env:DATABASE_URL=mongodb+srv://username:password@somemongodbserver/mydb?retryWrites=true&w=majority
.env.local:DATABASE_URL=mongodb+srv://username:password@somemongodbserver/mydb?retryWrites=true&w=majority
还尝试将其放入next.config.js
const nextConfig = {
reactStrictMode: true,
swcMinify: true,
env: {
DATABASE_URL: process.env.DATABASE_URL,
},
};
事实证明,我已经在本地为Postgres设置了DATABASE_URL
env-var,并且正在使用它,在nextjs应用程序中更改env-var名称修复了问题