Tag: mongodb

从mongoosecallback函数Node.js获取返回值

我已经写了这样的function function create(data, res){ var history= new historyData({ owner: data }); historyData.save(function(err, historyData) { //To identify the error if (err) { console.log(err); } //If no error pass the team details to databsae else { return historyData.id; } }); } 我试图得到这样的返回值 var history = create("saddsa", res); 但它给出了undefined错误 我想获得创build的集合的id并将其传递给另一个函数?

我无法停止asynchronous

所以我试图得到一个循环的数组,nodejs的asynchronous性质正在杀死我。 这是我的代码: getDevices(userIDs, function(result) { if (result) { sendNotification(messageUser, messageText, result); res.send("Success"); } else { res.send("ERROR"); } }); }); function getDevices(userIDs, callback) { var userDevices = []; var device = []; for (var i = 0; i < userIDs.length; i++) { searchRegisterDevices(userIDs[i], function(result) { if (result) { for (var j = 0; j < result.length; […]

如何使用NodeJs获取MongoDB中的数据库列表?

我已经在C#和Java上看到了答案,但无法在NodeJ上find任何东西。 我已经尝试在Windows中使用cmd shell来获取所需的输出,但没有运气。 我知道在Mongo shell中可以获取相同的信息,但是需要在NodeJs应用程序中获取一个列表。 cmd = child_process.exec('"C:\\Program Files\\MongoDB\\Server\\3.2\\bin\\mongo.exe" admin ; db.getMongo().getDBNames()'); 并且 var mongoServer = require('mongodb-core').Server; var server = new mongoServer({ host: 'localhost' , port: 27017 , reconnect: true , reconnectInterval: 50 }); server.on('connect', function (_server) { console.log('connected'); var cmdres = _server.command('db.adminCommand({listDatabases: 1})'); console.log("Result: " + cmdres); }

从Node更新Mongo

我是Node的新手。 在Mongo shell中,我对集合“system.user”发出这个命令 db.system.users.find({_id: "test.admin"}) 并取回这个logging { "_id": "test.admin", "user": "admin", "db": "test", "credentials": { "SCRAM-SHA-1": { "iterationCount": 10000, "salt": "hBehS02+DJL+XX92dpuXnw==", "storedKey": "6TifIE7lc4TLKkMSYC6yjX/WZ5Y=", "serverKey": "gqxsc9a6Z8HvBLpZl8bNxiPsYWA=" } }, "roles": [{ "role": "root", "db": "admin" }] } 我的问题是有人有一个JavaScript的例子,将告诉我如何更新angular色属性。 这样在JavaScript /节点更新之后 db.system.users.find({_id: "test.admin"}) 然后将阅读 { "_id": "test.admin", "user": "admin", "db": "test", "credentials": { "SCRAM-SHA-1": { "iterationCount": 10000, "salt": […]

Mongoose(express,node,mongo)范围问题findOne()

我有一个问题,我相信是mongoosevariables的范围。 我的代码是这样的: var blogUserId; blogs.forEach(function(blog, index) { User.findOne({'username': blog.username}, function(err, user) { blogUserId = user._id; console.log(blogUserId); }); console.log(blogUserId); Blog.find({'title': blog.title}, function(err, blogs) { if (!err && !blogs.length) { console.log(blogUserId); Blog.create({title: blog.title, author: blogUserId, body: blog.body, hidden: blog.hidden}); } if (err) { console.log(err); } }); }); 这是一个种子文件的一部分,只是为了开发,但我很困惑,为什么它不会工作。 blogs只是要加载到集合中的一组对象。 我已经search了所有类似的答案,但我还没有find一个正确的答案,可以解释这一点。

mongoose findByIdAndUpdate只更新文档中的一个字段

我想增加upvotes当用户点击一些button,还存储他的stormpath用户ID(req.user.href)在一个数组中。 尝试1: if (newUpvoters = found_post[0].upvoters.indexOf(req.user.href) == -1) { Problem.findByIdAndUpdate(found_post[0].id, { $push: { upvoters: req.user.href }} , {$inc: { upvotes : 1 } }, function (err, post) { if (err) return next(err); res.json(post); }) } 结果:只有upvoters数组被正确更新。 Upvotes不增加。 尝试2: Problem.findByIdAndUpdate(found_post[0].id, {$inc: { upvotes : 1 } }, { $push: { upvoters: req.user.href }}, function (err, post) […]

使用$ group在mongodb node.js中查找

我想通过order集合中的user_id进行分组,其中有很多条目,但是我想获取订单数量最多的五位用户,并总结特定用户的总体价格。 例如,如果我发了10个订单,我想取我的ID和我所有订单的总和。 我用下面的代码,但它不工作: Order.find({$group : { user_id : "$user_id"}},function(error,fetchAllTopUsers){ console.log('##################'); console.log(fetchAllTopUsers); }) 我已经检查了这个例子,但是他们没有使用$group查找。 我在Node.js和MongoDB中是新的。 与mongoose查询和总结 示例文档 { user_id : '57c7f4312b3c9771219bd21c', totalprice : 100 }, { user_id : '57c7f4312b3c9771219bd21c', totalprice : 59 }, { user_id : '57c7f4312b3c9771219bd21c', totalprice : 26 }, { user_id : '57c7f4312b3c9771219bd21c', totalprice : 533 }, { user_id : '57c7f4312b3c9771219bd21c', totalprice : 544 […]

我想使用Node.js,Sails.js和MongoDB构build像Kinvey的后端服务

您好我想build立像Kinvey后端服务(HTML和HTML5)使用node.js,sails.js和mongodb。 我可以在Kinvey中创build,发布,更新和删除。 HTML代码示例: var promise = Kinvey.DataStore.save('collection-name', { _id : 'optional-id', prop : 'value' }); promise.then(function(entity) { … }, function(error) { … }); 链接: http : //devcenter.kinvey.com/html5-v1/guides/datastore#Saving 我是新的MEAN堆栈和sails.js。 请build议是否有更好的框架或方法来做到这一点。 谢谢

如何在mongodb中两次过滤数据

的NodeJS var filter = {}; filter.strBillDate = { "$gte": new Date(req.params.fromdate), "$lt": new Date(req.params.todate) }; Sales.find(filter).exec(function(err, salesdata) { return res.send(salesdata); }); 这里它会过滤这两天的数据。 我需要每天在这些时间之间过滤数据(即每周7PM到10Pm)

如何创build一个Mongoose方法来写图像到cloudinary

所以我有MEAN栈应用程序(汽车销售),这需要我允许用户上传多个图像到MongoDB的后端。 我select将图像上传到Cloudinary ,然后上传成功,使用Cloudinary返回的图像URL创build一个新文档。 我对NodeJS / Mongoose相当陌生,所以我不确定我是如何实现我想要做的。 这是我到目前为止: var mongoose = require('mongoose'); var cloudinary = require('cloudinary'); var AdSchema = new mongoose.Schema({ sellerEmail: String, createdAt: { type: Date, default: Date.now }, expiresAt: { type: Date, default: new Date(+ new Date() + 28 * 24 * 60 * 60 * 1000) }, adTitle: String, price: Number, currency: String, […]