Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/39.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Node.js 如何在KeystoneJSV5中添加MongoDB Atlas云数据库_Node.js_Mongodb_Mongoose_Keystonejs - Fatal编程技术网

Node.js 如何在KeystoneJSV5中添加MongoDB Atlas云数据库

Node.js 如何在KeystoneJSV5中添加MongoDB Atlas云数据库,node.js,mongodb,mongoose,keystonejs,Node.js,Mongodb,Mongoose,Keystonejs,我在MongoDB Atlas云上有数据库服务器。 我可以使用MongoDB本地数据库设置Keystonejs 5,但我不知道Keystonejs对数据库连接字符串和设置的期望 下面的细节可能有助于理解我的问题 Mongoose数据库适配器 用法 const{MongooseAdapter}=require('@keystonejs/adaptermongoose'); 常量密钥石=新密钥石({ 名称:“我的精彩项目”, 适配器:新的MongooseAdapter(), }); APInew

我在MongoDB Atlas云上有数据库服务器。 我可以使用MongoDB本地数据库设置Keystonejs 5,但我不知道Keystonejs对数据库连接字符串和设置的期望

下面的细节可能有助于理解我的问题

Mongoose数据库适配器 用法
const{MongooseAdapter}=require('@keystonejs/adaptermongoose');
常量密钥石=新密钥石({
名称:“我的精彩项目”,
适配器:新的MongooseAdapter(),
});
API
new MongooseAdapter(选项)
options.mongoUri
(可选) 这用作
mongoose.connect()
uri
参数

默认值:环境变量(见下文)或
'mongodb://localhost/“

如果未指定,KeystoneJS将首先查找以下环境变量之一:

  • 连接到
  • 数据库\u URL
  • MONGO_URI
  • MONGODB_URI
  • MONGO\u URL
  • MONGODB_URL
  • 蒙古乌里
  • URL
如果找不到其中任何一个,则会从KeystoneJS项目名称派生一个连接字符串,其中包含一个
数据库\u名称

猫鼬选项(可选) 其他Mongoose配置选项直接传递到
Mongoose.connect()


有关选项的详细列表,请参见。

您只需添加一个与问题中列出的环境变量之一匹配的环境变量,然后将该环境变量设置为MongoDB atlas cloud提供给您的连接字符串


我在我的项目中添加了一个.env文件,然后在那里添加了一个
MONGO_URI
条目,然后使用了dotenv包。

可以通过添加
.env
文件来完成,也可以直接将
mongoUri
传递给适配器

请参阅下面的代码:

const keystone = new Keystone({
  name: 'My Awesome Project',
  adapter: new MongooseAdapter({mongoUri:"mongodb+srv://....."}),
});