当我启动Express应用时,我会在Environmental Variables
中定义所有必需参数。
根据代码here:
const MongoClient = require('mongodb').MongoClient;
const assert = require('assert');
// Connection URL
const url = 'mongodb://localhost:27017';
// Database Name
const dbName = 'myproject';
// Use connect method to connect to the server
MongoClient.connect(url, function(err, client) {
assert.equal(null, err);
console.log("Connected successfully to server");
const db = client.db(dbName);
client.close();
});
获取我需要的数据库对象:
environment variable
,不喜欢它。URI
这样的对象:mongodb://localhost:27017/myproject
以提取数据库名称。还有一行代码,也不喜欢它。还有其他第三种解决方案吗?当我尝试调试client
对象时,如果连接成功则返回该对象我已经看到它已经包含连接到的数据库的名称,请参阅下面的截图,但我还没有找到任何{ {3}}如何使用它。使用我不喜欢的“hacky”方式。
答案 0 :(得分:0)
现在只需不将任何变量传递给client.db()
即可完成此操作。
文档说明:
我们要使用的数据库的名称。如果未提供,请使用数据库 连接字符串中的名称。
http://mongodb.github.io/node-mongodb-native/3.6/api/MongoClient.html#db