Articles of mongodb

Node.js等到asynchronous函数完成,然后继续执行其余的代码

在我的代码中,我有2个for循环执行一个asynchronous函数(在两个循环中它是相同的函数),但是在这两个循环之后的代码必须等到执行它们之后才运行。 这是我的代码: for(var a = 0; a < videoIds.length; a++){ if(videoIds){ findVideo(videoIds[a], function(thumbnailPath, videoName){ // findVideo is the async function // it returns 2 values, thumbnailPath and videoName videoNames[a] = videoName; // and then these 2 values are written in the arrays thumbnaildPaths[a] = thumbnailPath; console.log('1'); }); } } // then the above code runs […]

find()和sort()在Mongoose中的含义是什么?

我是mongoose新手,所以有些我不太明白。 代码如下: 问题是 1我找不到这里有两个参数(就像find({})),为什么在这个代码中find两个参数? 2“sorting(sorting+sorting)”是什么意思? 我很困惑。 var sort = req.query.sort || "created"; var order = (req.query.order === "asc" ? "-" : ""); var limit = req.query.limit || "20"; var offset = req.query.offset || "0"; Opportunities.find(filterObject, '-email') .sort(order + sort) .skip(offset) .limit(limit) .populate('tags') .populate('location') .exec(function (err, opportunities) { if (err) return handleError(res, err); return res.json(200, opportunities); […]

如何用子文档数组更新MongoDB文档

我正在使用一个MongoDB数据库,这个数据库的集合模型类 , 学生 , 主题和学术performance 。 下面是基于Mongoose的模式和模型: var mongoose = require('mongoose'); var Schema = mongoose.Schema; var ObjectId = Schema.Types.ObjectId; // SUBJECT collection var subjectSchema = new Schema({ name : { type: String, required: true }, category : { type: String, required: true } }); var Subject = mongoose.model('Subject', subjectSchema); // STUDENT collection var studentSchema = […]

c#打开cmd并继续 – nodeJS仪表板更新

我正在开发一个应用程序启动javascript / nodeJS文件通过一个简单的用户界面,加载JS脚本。 nodeJS仪表板 我想添加一个工具是“启动mongoDB” – 启动一个mongod实例。 我们用(mongod),然后是我们的服务器开始我们的DB拳头。 问题: 我可以通过c#Form打开一个CMD实例。 有什么build议么? PS。 图像中的mongod实例是手动启动的

MongoDB(Node)findOne函数在按IDsearch时不返回结果

他们,我真的不明白我做错了什么。 尝试了所有我可以find的interwebs,但我不能通过我的Node应用程序中的ID获取文档。 所以情况如下: 如果我在terminal中使用MongoDB shell,会生成: db.tochten.find({"_id" : ObjectId("577a6640c27dc10de81b265d")}) { "_id" : ObjectId("577a6640c27dc10de81b265d"), "datum" : "2016-07-07", "weergavedatum" : "donderdag 7 juli", "begintijd" : "20:00", "eindtijd" : "21:00", "schip" : "Ouwe Dirk", "tocht" : "Rondvaart", "maxaantal" : "40", "opemerkingen" : "", "reserveringen" : [ ] } 到目前为止这么好吗? 在我的Node应用程序中 //open db connection MongoClient.connect(url, function(err, db) { assert.equal(null, err); […]

NodeJS:callback不是一个函数 – 电子邮件validation

我试图实现一个用户注册系统,在Android与节点作为我的后端服务器。 我在本地主机上使用Node 4.4.5,并使用“email-verification”包 – https://www.npmjs.com/package/email-verification 所以根据android的请求,发送一个validation链接的确认电子邮件,这是正常工作。 点击链接时,会发出GET请求,确认用户,将其添加到MongoDB数据库,并发送JSON响应。 电子邮件被发送给用户确认该帐户。 发送确认邮件后,服务器崩溃。 这是我的代码 – router.get('/email-verification/:URL', function(req, res, next){ var url = req.params.URL; console.log('email-verify-start'); nev.confirmTempUser(url, function(err, user) { console.log('error is :' + err); if (user) { nev.sendConfirmationEmail(user.email, function(err, info) { if (err) { console.log('sending_conf_email_failed'); return res.json({'email': 'sending_conf_email_failed'}); } console.log('user_confirmed'); res.json({ 'email': 'user_confirmed' }); console.log('Done, and confirmed'); }); } else […]

带对象的mongoose纲要

我尝试用NodeJS填充MongoDB中的文档,因此我创build了一个Schema和一个post req。 var gameSchema = new Schema({ title: String, developer: { name: String, email: String }, isBroadcasted: Boolean }); 所以我想填充这个架构感谢需求。 router.post('/android', auth, function(req, res){ // Create a new instance of the Game model var game = new Game(); game.title = req.body.title; game.developer.name = req.body.developer.name; game.developer.email = req.body.developer.email; 但是,当我运行它时有一个错误消息“TypeError:不能读取未定义的属性名称”,但我不明白为什么,因为developer.name存在。

为什么我的Mongoose查询不更新MongoDB数据库中的嵌套数组中的值?

我试图用几种方式来实现这一点,而且似乎没有任何工作。 我需要做的只是将特定Notifications对象(由其_idfind)的Status值从0更改为1 。 示例JSON: { "_id": "577fbf0c7c6e88600ede5e73", "updatedAt": "2016-07-14T11:27:18.670Z", "createdAt": "2016-07-08T14:56:12.013Z", "Name": "Name", "Email": "test@test.com", "Notifications": [ { "_id": "5787644108edec801e9cd0ab", "Title": "They commented on This", "Type": 1, "Status": 0, "TeamID": "578357109bb105602b1cba27", "DraftID": "578357b89bb105602b1cba2a" }, { "_id": "578777167d1f3424251c361f", "Title": "He commented on That", "Type": 1, "Status": 0, "TeamID": "578357109bb105602b1cba27", "DraftID": "578357b89bb105602b1cba2a" } ] ….. } 我的路线: […]

部分满足条件的MongoDB结果

我想在Node中写一个查询,这样mongo会告诉我是否有部分满足search条件的结果。 如果数据库中的数据是这样组织的: { param1: String, param2: String, param3: String } 而且,param2对每个条目都是唯一的。 而查询将是这样的 findOne({param1:'str1', param2:'str2', param3:'str3'}, function(…){}); 基本上,我需要一个查询,告诉我返回的结果是否完全或部分满足search条件。 如果结果满足param1和param2,但不是param3,则会在结果对象旁边返回一条消息或一个错误。 这在mongoDB中可能吗? findOne()仅仅是一个例子,它不一定是一个findOne()查询,或者一个查询(如果不可能的话)。 如果是这样,那么如何使用最less的查询来完成呢?

保存formdata文件到mongdb?

如何保存formdata图像文件到mongodb? 这是我的node.js代码: router.post('/upload', upload.any(), function(req, res, next) { console.log(req.files); }); 它返回: [{ fieldname: 'file', originalname: '1.jpg', encoding: '7bit', mimetype: 'image/jpeg', destination: 'public/uploads/', filename: '788cc8dfacb8ef86233ec1e11fcc58fe', path: 'public/uploads/788cc8dfacb8ef86233ec1e11fcc58fe', size: 27189 }] 那么接下来我该怎么做? 我只是将文件名存储到mongodb? 或存储整个对象? 我想要的是以后从数据库中检索所有的图像。