草庐IT

nodes_alive

全部标签

node.js - 带有 mongoose 子文档的 HTTP PATCH 语义

我有一个包含多个Layer子文档的Map文档,并且想要实现HTTPPATCH,因此只有给定的JSON属性应该更新Layer子文档。以下代码有效,但我必须指定可以更改的每个属性。有更好的方法吗?varupdate={};if(req.body.name!==undefined)update['layers.$.name']=req.body.name;if(req.body.isDefault!==undefined)update['layers.$.isDefault']=req.body.isDefault;if(req.body.isPublic!==undefined)updat

node.js - 如何使用 MongoDB/NodeJS 进行大规模随机更新

我有一个包含超过1000000个文档的mongoDB集合,我想用专用信息逐个更新每个文档(每个文档都有来自其他集合的信息)。目前我正在使用一个游标从集合中获取所有数据,我通过Node.js的异步模块更新每条记录获取所有文档:inst.db.collection(association.collection,function(err,collection){collection.find({},{},function(err,cursor){cursor.toArray(function(err,items){......);});});更新每个文档:items.forEach(func

javascript - 我在我的 Node.js 应用程序中使用 MongoSkin,在一段时间不活动后,它失去了与数据库的连接

我正在buildmyfirstNode.jsapplication我遇到了MongoDB的问题.我正在使用MongoSkin驱动程序。一旦我启动了我的应用程序,一切都运行良好。我可以坐下来玩一个小时,它会继续工作。但是,如果我让它在没有任何事件的情况下静置几分钟,那么下一个请求将导致错误:Error:connectionclosedatServer.connect.connectionPool.on.server._serverState(X:\Code\CodeTunnel\node_modules\mongoskin\node_modules\mongodb\lib\mongodb

node.js - 获取mongodb集合中的最大元素抛出异常

我对下面的代码有疑问。我尝试在“链接”集合中获取max(seq)。运行下面的代码后,出现“fatalerror:JS分配失败-进程内存不足”错误。我怎样才能克服这个问题?感谢您的回复。db.collection('links',function(err,collection){varoptions={"limit":1,"sort":[['seq','desc']]};collection.find({},options,function(err,docs){console.log("Returned#"+docs.seq+"documents");});});注意:顺便说一句,nod

node.js - 无法使用 node.js 和 Mongodb 包查询 MongoDB 数据库

我无法使用node.js和Mongodb包查询我的MongoDB数据库。我已经像这样成功地插入了2个对象:varmongo=require("mongodb");varhost="127.0.0.1";varport=mongo.Connection.DEFAULT_PORT;vardb=newmongo.Db("nodejs-introduction",newmongo.Server(host,port,{}),{safe:true});console.log(host);db.open(function(error){console.log("Weareconnected",+ho

node.js - 彻底关闭 express.js + mongodb 服务器(使用 node.js)

我有一个使用express.js和mongodb作为数据存储的node.js网络服务器。此服务器由runit控制,我正在尝试实现一种正常关闭服务器的方法。我正在为SIGINT实现信号处理程序和SIGTERM,并且我知道您可以通过调用.close()来停止监听新连接。在createServer()返回的对象上.到目前为止一切顺利。但是,即使没有更多的请求即将到来,系统中可能已经有许多请求需要在我关闭数据库之前完成。我正在使用mongodbReplicaSet,我想如果我只调用db.close()马上,其中一些请求可能会以某种方式失败。有什么方法可以以允许挂起的数据库查询完成的方式关闭数据

node.js - Mongodb 找到最佳匹配

我想构建一个查询,返回数据库中最匹配的文档。即我想查找包含以下字段的文档-“动物”:“狗”“颜色”:“棕色”“图案”:“点”“尺寸”:“小”如果没有包含上述所有字段及其对应值的文档,我希望查询返回最佳匹配。f.e{"animal":"dog","color":"brown","size":"small"}我可以在mongodb中实现递归查询吗?如果是这样,如何?我应该使用mapReduce,如果是,如何使用?人们可以将这个问题更多地看作是一个推荐系统问题,就像我想推荐最适合给定值的项目(文档)一样,如果有人知道实现上述内容的好方法,我将不胜感激我正在使用mongodbmongoose和

node.js - 使用 Node.js 和 Express.js 检索 MongoDB 子文档

我使用node.js、express.js和mongodb创建了一个RESTfulAPI。我开始通过从运行良好的MongoDB集合中提取文档来创建我的路由。示例集合文档{"_id":ObjectId("51ace8c04cc8ea865df0923e"),"title":"SomeExampleTitle","producer":{"company":"YourCompanyName"}}有效-如果我执行.find({query})而不是通用的find(),它也有效app.get('/something',something.findAll);exports.findAll=funct

node.js - 蒙戈/ Mongoose : cleanup orphaned refs

假设我们使用引用作为模型的典型一对多关系为suggestedbyMongoDBofficialdocumentation:varUser=mongoose.Schema({});varGroup=mongoose.Schema({user:[{type:mongoose.Schema.Types.ObjectId,ref:'User'}]});我们还假设我关心用户出现在组中的顺序,因此数组是必需的。现在,让我们假设用户已被删除——并且出于某种原因,组没有使用$pull进行维护。如果您使用Mongoose的populate,一切看起来都很好,但是垃圾仍然存在于数组中。有没有办法识别孤立的

node.js - GridFS 中的自定义字段

它可以在GridFS中保存自定义字段,我使用的是NodeJS和gridfs-stream模块。该文件保存为下一个架构:{_id:"5208b9929e462bc24b000001",filename:"algo.txt",contentType:"binary/octet-stream",length:133074,chunkSize:262144,uploadDate:"2013-08-12T10:31:46.152Z",aliases:null,metadata:null,md5:"56cd6b2057623bfb70111b883678d436"}可以使用上传文件的用户ID添加自