57得票12回答
如何在Mongodb原生Node.js驱动程序中检查集合是否存在?

我需要检查特定数据库中是否存在一个集合,如果不存在,则创建它。我知道db.createCollection(collName, {strict:true}, function(error, collection)) 在创建集合collName之前,检查其是否存在并设置error对象。但我需要一...

33得票5回答
为什么我会收到错误消息“尝试打开未关闭的连接”?

我正在尝试通过mongoose将我的node应用连接到mongodb。似乎已经成功了,因为我可以添加文档,但是我收到了错误信息{ [Error: Trying to open unclosed connection.] state: 2 }。 我创建了一个非常简单的应用程序,只是为了确保在连...

32得票1回答
MongoDB按嵌套对象值排序

我想按嵌套对象的值对结果进行排序。我正在使用node-mongodb-native实现此操作: this.collection.find({ "_id": ObjectID(item_id) }, { "items": 1 }, { ...

30得票4回答
如何使用Node.js本地驱动程序,通过用户名/密码连接MongoDB

我正在Joyent云中使用原生的mongo驱动程序,在本地运行的node.js应用程序很好,但在Joyent上当我使用他们提供的用户名/密码运行时它无法连接。 这是我用来连接的代码:var db = new MongoDB(dbName, new Server('localhost', 270...

27得票1回答
使用Mongo集合中的二进制数据作为图像源

我有一个使用Express框架开发的应用,将数据存储在Mongo数据库中,并使用Jade作为视图引擎。我有一个简单的路由,用于获取特定集合中的文档,每个文档对应一个产品。该图片是以base64编码的形式存储的。但当我尝试将其呈现为图片时,它无法正常工作。 我的路由如下:exports.ind...

25得票7回答
如何在NodeJS中处理Mongodb的全局连接是最佳方法?

我正在使用Node-Mongo-Native,并尝试设置一个全局连接变量,但我对两个可能的解决方案感到困惑。你们能帮我确定哪个是好的吗? 1. 解决方案(不好的地方在于每个请求都会尝试创建一个新连接。)var express = require('express'); var app = ...

25得票5回答
如何使用bluebird将MongoDB原生Javascript驱动程序转换为Promise形式?

我想使用MongoDB原生JS驱动程序和bluebird promises。我该如何在这个库上使用Promise.promisifyAll()?

23得票6回答
按照ID删除记录?

为什么我无法通过_id删除记录? 代码:db.collection('posts', function(err, collection) { collection.remove({_id: '4d512b45cc9374271b00000f'}); });

20得票3回答
无法将Mongoose连接到Atlas

我一直在连接到名为“admin”的数据库,这是一个已修复的 bug。 我正在使用 Mongoose 5.0.6、MongoDb 3.6 并尝试连接 Atlas。 我的问题是,Mongoose 5.0.6 依赖于哪个驱动程序? 我怎样才能知道 Mongoose 何时会修复这个问题? 另一方...

19得票2回答
mongodb-nodejs-driver,DeprecationWarning: collection.count已被弃用

我想要使用以下代码获取文章文档的数量:db.collection('posts').count() 但是,我收到了一个警告: DeprecationWarning: collection.count 已弃用,并将在将来的版本中删除。请使用collection.countDocuments或c...