Articles of mongodb

devise一个MongoDB数据库 – 有很多embedded式文档可以吗?

我正在尝试为简单的投票系统创build一个MongoDB数据库。 如果我要绘制一个模式,那么它看起来像这样: User { name: String , email: String } Vote { message: String , voters: [ObjectId(User._id)] } 我有一些关于这个devise的问题,当有一个投票的选民很多: 将整个选民arrays发送到客户端(更不用说将其caching在内存中)非常昂贵,对吧? 有没有办法以“浅”的方式得到投票,所以当我需要vote.voters时,它会向选民arrays提出另一个数据库请求? 如果选民已经投了票,我想检查一下,不要数他的票。 要做到这一点,是否有一个查询,我可以运行在embedded式选民arrays快速find这个? 当显示投票时,我想要显示票数而不需要将选民arrays提交给客户端。 有什么计数查询我可以运行来计算选民的长度?

实时数据馈送+ NodeJS和MongoDB

希望对您的devise和技术select有一个解决问题的意见。 我通过一个微控制器(每30秒发送一个值 ),从连接到速度传感器的计算机的串行端口获得连续数据馈送( 速度值V )。 我想做两件事情: – 存储V和一个时间戳到MongoDB – 把这个速度提供给一个网页并画一个图表。 存储V和时间戳用于处理这些数据并计算less量指标(不是实时的)。 我selectMongo,因为这是我为应用程序的其他部分(web应用程序)(模式less,json,用于我的速度日志的capped集合,实时的东西…) 我正打算使用nodejs和spawn(cat / dev / ttyS0)来获得我的数据馈送,然后,我可以将它存储到本地MongoDB并通过http服务器提供。 我刚刚发现https://github.com/voodootikigod/node-serialport可以比我的产卵(猫…)更强大 你会做同样的事情吗? 而且,如何将本地MongoDB速度集合与远程MongoDB数据库同步? 感谢您的帮助和想法! PS:我有3台机器,3个不同的串行端口和3个节点服务器/本地MongoDB的饲料…

我如何使用Mongoose进行查询,然后拿这个文档做其他事情?

User.findOne({}, function(err, doc){ //do stuff with "doc" here. }); 这就是我现在这样做的方式。 但是,如果我想采取“文件”,只是做的东西。 User.findOne({}, function(err, doc){ //do stuff with "doc" here. }); runAnotherFunction(doc.name) doc… 如何从“function”部分取出“doc”?

你如何做一个“连接”在一个数组与mongoose(mongodb)node.js?

你怎么做一个“join”(我知道这不是一个正确的术语)与mongoose的消息数组? 我试着循环所有的消息和查询获取用户信息,但它不工作: messages.forEach(function (message, index) { User.findById(message.userId, function (err, user) { messages[index].user = user }) }) console.log(messages) // the user info is not attatched 那么mongoose和node.js如何实现呢?

无法在Ubuntu 10.10上运行mongojs(node-mongodb-native wrapper)

我使用npm install mongojs来获取包装,但是当试图运行我的应用程序时,出现以下错误: node.js:195 throw e; // process.nextTick error, or 'error' event on first tick ^ Native bson parser not compiled, please compile or avoid using native_parser=true 然后我尝试从github获取源代码并编译node-mongodb-native。 然后运行make时出现以下错误: make -C ./external-libs/bson make[1]: Entering directory`/tmp/node-mongodb-native/external-libs/bson` rm -rf build.lock-wscript bson.node node-waf configure build Checking for program g++ or c++: /usr/bin/g++ Checking for program cpp: /usr/bin/cpp Checking […]

node.js – 不能让mongodb工作,可能安装错了?

我想这是在黑暗中的一个镜头,因为没有很多我可以告诉你的具体代码… 但我使用节点,并试图使用mongodb,但是我不能让mongodb连接。 我已经尝试了几个教程,几乎可以开箱即用。 在几个情况下,似乎没有任何直接引用数据库的页面将加载好。 例如,将会加载“posts / new”页面。 但'/'可能会引用显示post,只会静静地挂起(浏览器显示页面加载)。 如果例如我提交了一个新的职位浏览器挂起,并在terminal,我得到: Express app started on port 3000 Error: Invalid ObjectId at Function.fromString (/Users/xxx/Node_projects/noobjs/node_modules/mongoose/lib/drivers/node-mongodb-native/objectid.js:27:11) at ObjectId.cast (/Users/xxx/Node_projects/noobjs/node_modules/mongoose/lib/schema/objectid.js:99:16) at ObjectId.castForQuery (/Users/xxx/Node_projects/noobjs/node_modules/mongoose/lib/schema/objectid.js:133:17) at Query.cast (/Users/xxx/Node_projects/noobjs/node_modules/mongoose/lib/query.js:249:32) at Query.findOne (/Users/xxx/Node_projects/noobjs/node_modules/mongoose/lib/query.js:851:10) at Function.findOne (/Users/xxx/Node_projects/noobjs/node_modules/mongoose/lib/model.js:714:16) at /Users/xxx/Node_projects/noobjs/routes/articles.js:13:13 at paramCallback (/Users/xxx/Node_projects/noobjs/node_modules/express/lib/router/index.js:259:7) at param (/Users/xxx/Node_projects/noobjs/node_modules/express/lib/router/index.js:241:11) at pass (/Users/xxx/Node_projects/noobjs/node_modules/express/lib/router/index.js:253:5) GET /article/new 500 GET /articles/new 200 如果它有帮助,这里是上面使用的教程应用程序的package.json: { […]

用Mongoose保存mongoDb,保存意外的元素

当我用mongoose写入我的mongoDB时,操作被成功处理,我的文档被保存,但是也有所有的怪异的其他sutff写下来。 这似乎是mongoose的代码。 什么可能导致这个? 我添加一个特定的数组中的东西: resultReference.ref[arrayLocation].allEvents.push(theEvent); {id:11,allEvents:[]}是一个ref元素的结构,我把allEvents数组中的这个事件。 然后我resultReference.save() 我使用express,mongoose和mongoHQ作为数据库。 我尝试了一个当地的mongo服务器,这个烦恼仍然存在。 我已经在我的控制台中打印了save()之前的文档,而不是这个怪异的代码在那里。 { id 11 allEvents [ 0 { _events { maxListeners 0 } _doc { _id {"$oid": "4eb87834f54944e263000003"} title "Test" allDay false start 2011-11-10 13:00:00 UTC end 2011-11-10 15:00:00 UTC url "/test/4eb87834f54944e263000002" color "#99CCFF" ref "4eb87834f54944e263000002" } _activePaths { paths { title "modify" allDay "modify" start […]

Express上的节点 – 什么数据存储?

我正在做节点/快递的第一个项目。 我正在寻找实施一个数据存储,并注意到快递正在使用redis作为会话存储。 这是否意味着默认快速安装redis? 我问的原因是我在考虑是否要安装mongodb,但是如果redis已经在使用,我会继续使用它。 新的节点和expression如此任何build议非常赞赏。

mongodb / mongoose中的date格式

当我在javascript中创build一个date,它是在祖鲁语,当我通过mongoose保存在我的mongodb中,它被转换为UTC(它保持相同的时间值,但时区改变)。 我想保存在祖鲁,保存时,我怎么能设置mongoose这个选项? 谢谢

在使用enctype集保存mongodb中的数据时遇到问题

嗨,我有一个像下面给出的forms <form action='/posts', method ='post',enctype='form-data'> <div> <span>FileName :</span> <input type="text" name="filename" id="filename" /> </div> <div> <span>File :</span> <input type="file" name="file" id="file" /> </div> <div> <span>Submit :</span> <input type="submit" name="Submit" value ='Submit' id="editSubmit" /> </div> </form> 相应的保存在mongodb中的方法是: app.post('/posts', function(req, res) { RegProvider.save({ filename: req.param('filename'), file: req.param('file') }, function(error, docs) { res.redirect('/'); }); }); 当我在ejs文件中删除enctype一切工作正常,数据获取存储在mongodb.However但是,当我把enctype在ejs文件中,没有东西被存储在monogdb.Infact当试图检索数据我得到未定义的值的文件名和文件从fiels.Is有可能enconype和存储在数据库中的数据。如果是的话,这是如何实现的。