草庐IT

Node-red

全部标签

node.js - Node MongoDB : Multiple save requests not working

我在我的应用程序中使用node-mongodb-native。我向nodejs服务器发送多个POST请求以保存/更新每个文档,但只有一个文档正在更新,所有其他文档都没有改变。服务器接收到的数据是正确的。save:function(req,res){data=req.body;if(!data._id){data._id=newObjectID();}else{data._id=ObjectID(data._id);}mColl(req.params.collname,function(collection,db){collection.save(data,{safe:true},fun

node.js - Mongoose 填充返回空值或未定义

如果这是一个n00b问题,我很抱歉,我已经在Google和Stack上搜索了几个小时,我必须要问!我有两个模式,用户和故事,如下所示。我正在尝试使用Ref选项为故事引用用户以在查询中填充-我之前使用过mySQL,因此想尝试复制JOIN语句。每当我尝试使用populate时,我只会返回objectID或null(如下所示)。11月12日编辑以修复硬编码ID并添加控制台数据story-schema.jsvarmongoose=require('mongoose'),Schema=mongoose.Schema,User=require('./user-schema');varStorySc

node.js - 我无法在 Node 中修改数组

我正在尝试对从mongoose/MongDB查询返回的数据数组进行一些修改。但是,我似乎无法对数组进行任何更改。我在这里遗漏了什么明显的东西吗?functionstdSend(err,data,res){if(err){console.log(err);res.send(err);}else{console.log('rowsreturned:'+data.length);for(varrep=0;repstdSend正在作为回调从Mongoose.exec函数调用。回调工作正常,数据在我将其提供给res.send后发送到浏览器。但是,我想通过在发送之前将data[].timestam

node.js - 在 MEAN+Mongoose 堆栈中的何处加载批量数据?

在哪个MEAN堆栈级别加载批量数据最好?我有大约200-800个条目,属于2-3种不同类型(即它们需要2-3种不同的Mongoose模式)。以下是加载这些数据的选项(欢迎指出任何误解,我是新手):客户端:Angular级别自动执行大量用户输入服务器端:Nodejs+Express+Mongoose在Mongoose中定义模式,创建对象,保存每个对象数据库端:Mongodb将数据制作成json文件,直接导入Mongo:mongoimport-ddb_name-ccollection_name--jsonArray--filejsonfilename.json第三种方式是最纯粹的,也许也是

node.js - 使用 node.js 的 Mongoose 中的日期转换错误

使用mongoose将数据插入mongoDB时出现日期转换问题。模型看起来像这样:varuserSchema=newSchema({emailid:String,createddate:Date,status:String});我想保存的值(value){emailid:'test@testwert.com',status:'Activv',createddate:'24/01/2014'}错误:{message:'Casttodatefailedforvalue"24/01/2014"atpath"createddate"',name:'CastError',type:'date',

node.js - Mongodb 计数聚合返回 0

我有一个集合,其中包含数组属性的复合索引。我正在运行的查询是:db.servers.find({$query:{features:{$elemMatch:{'name':'a','status':'passed'}}}}).count()这个查询过去返回一个有效数字,但现在它只返回0。如果我删除count()命令,我会得到一长串匹配项。问题与此处的问题类似-MongoDB'scount()incorrectlyreturns0ifaqueryisgiven到目前为止,我已经尝试重新启动、更新、运行repaireDatabase、运行reIndex、运行dropIndexes并让mong

node.js - MongoDB Node native 驱动程序创建重复文档

当我使用mongodb-native-driver保存对文档的更新时,我得到了一个重复的文档。我对save()的第一次调用正确地创建了文档并添加了一个带有ObjectID值的_id。第二次调用使用原始ObjectID的文本_id创建一个新文档。例如,我最终得到:>db.people.find(){"firstname":"Fred","lastname":"Flintstone","_id":ObjectId("52e55737ae49620000fd894e")}{"firstname":"Fred","lastname":"Flintstonewithachange","_id":

node.js - 在 mongoose 中使用 mongodb 多键索引方法索引引用数组

我的模式有一个ObjectIds数组,它们是另一个模式的引用。我想要的是使用mongodb的多键索引方法索引这个数组条目。因此,给定ProductCat集合中某个文档的ObjectId,我可以列出我当前集合中具有给定ObjectId的所有文档_pro_cat字段。我对在mongoose模式声明中声明字段的确切方式感到困惑,这是我正在尝试的:_pro_cat:{type:[mongoose.Schema.Types.ObjectId],ref:'ProductCat',index:true}_pro_cat:[{type:mongoose.Schema.Types.ObjectId,re

node.js - 预填充数据库 - nodejs + mongodb

我正在使用nodejs和mongodb创建一个webapp。因为我目前在本地工作,所以我想使用一个已经包含一些元素的本地数据库,这样每次运行我的程序时我的数据库都不会为空。最好的方法是什么?谢谢 最佳答案 1)在本地安装mongodbhttp://www.mongodb.org/2)编写一个nodejs脚本来删除集合(如果存在),然后将新数据插入到这些集合中3)每当您想重置测试集时,从命令提示符运行该脚本。我建议使用异步来连续插入。https://github.com/caolan/async掉落:varcollections=['

node.js - mongoDB 查询返回 null,但使用 .toArray 返回数据

我在mongoDB中有这个查询varquery={"_id":newObjectID(id)};varitems={items:1};warehouses.find(query,items,function(error,docs){if(error){error(error);return;}success(docs);});我想通过_id从文档中获取项目。这返回我docs.items=undefined但是当我这样做的时候:warehouses.find(query,items).toArray(function(error,docs){if(error){error(error);