草庐IT

mongoose-encryption

全部标签

node.js - 蒙戈 (+ Mongoose ) 错误 : Unable to find index for $geoNear query

这是我的架构:varActivitySchema=newSchema({loc:{type:[Number],index:'2dsphere'}});当我尝试使用near查找文档时:Activity.find().where('loc').near({center:[-71.072810,42.370227],spherical:true}).exec(function(err,docs){if(err)console.log(err);console.log(docs);})这是我得到的:{[MongoError:Unabletoexecutequery:errorprocessin

node.js - MongoDB/ Mongoose : find(query) and aggregate([ $match: query ]) results differ when using dates and $gte/$lte

我使用Mongoose构建聚合管道并且匹配工作正常,直到我想使用$gte和$lte运算符匹配日期。奇怪的是,如果我在常规find()中使用匹配查询,它会按预期工作:varquery={dueDate:{$gte:moment().toISOString()//I'vealsotriedusing$date{...}}};//findsentriesmatchingthequery[...,...]Model.find(query,callback);但是,使用$match和相同查询进行聚合不会:varaggregation=[{$match:query}];//findsnoentri

node.js - Mongoose 中多个键的唯一性

这个问题在这里已经有了答案:UniquedocumentsusingmultiplevaluesinMongooseSchema(1个回答)关闭7年前。如果我想让任何字段唯一并避免重复,我使用如下描述的语法varschema=mongoose.Schema({projectName:String,authorName:{type:String,index:true}});但是如果我想让(projectName,authorName)对的值唯一呢?我知道mongodb支持这个db.collection.ensureIndex({a:1,b:1},{unique:true})如何在mong

node.js - Mongoose :在 find() 之后填充

我是mongo和nodejs的新手,这是我正在尝试做的事情:该API用于根据查询检查数据库中是否存在现有条目。(a)如果没有现有文档,创建一个新文档,填充,发送到客户。(b)如果文档存在,返回文档,填充,发送到客户。问题:在场景(a)中,创建文档后,API向客户端发送“null”。可疑.populate()和.exec()在API完成创建新文档之前运行。代码片段返回null:console.log('InsideIF'+video_res);//returnsnull解决这个问题的最佳方法是什么?model_video.findOne(video_entry,function(err,

json - Mongoose.js getter 在 Find() 上膨胀子文档?

是否有Mongoose.js验证的逆过程可以在检索父文档时膨胀子文档?我可能一直在查看文档,但我没有认出现有功能的本质。MongoDB的优点在于查询规范(例如{likes:{$gt:10,$le:14}}本身就是Javascript对象,并且直到最近一直将它们存储在一个MongoDB实例作为子文档。但是,从MongoDB2.4升级到2.6,这些不再有效存储,现在收到错误:Thedollar($)prefixedfield'$or'...isnotvalidfor存储我因此处于这种情况GoogleGroupsDiscussion.那里的作者建议将文档展平为字符串。如果子文档具有嵌入点的合

javascript - 没有字段名称的 Mongoose 结构聚合输出

我正在使用聚合对子文档中的数据进行分页。子文档没有严格的架构,因此它们对于每个文档可能不同,这让我很难构建我的输出,因为我不知道子文档的字段名称。我在用什么蒙戈3.0.0Node0.10.33Mongoose3.9.7我的模型varBodySchema=newSchema({random:String},{strict:false});varFeedSchema=newSchema({name:String,body:[BodySchema]});我的数据是这样的[{_id:"...",name:"PowerRangersfeed",body:[{"_id":"...","name":

node.js - Mongoose:在设置值后,为新创建的对象的值转换为 ObjectId 失败

这个问题在这里已经有了答案:What'sMongooseerrorCasttoObjectIdfailedforvalueXXXatpath"_id"?(33个答案)关闭7年前。尽管这个问题已被多次询问,但通常是因为该实体没有该字段的有效ObjectId。我遇到过这样一种情况,即ObjectId被设置为一个可以转换为ObjectId的值,但仍然出现此错误。架构:varserviceSchema=paramMongoose.Schema({serviceName:{type:paramMongoose.Schema.Types.ObjectId,ref:'servicenames',re

javascript - 如何从十六进制字符串在 Mongoose 4.0.x 中创建 ObjectId?

mongoose.mongo.Types.ObjectId没有fromString或fromHexString函数。似乎newmongoose.mongo.Types.ObjectId(hexString)也没有创​​建对象ID。varid=newmongoose.Types.ObjectId(hexString);db.Record.find({_id:id},function(err,campaign){if(err)console.log(err);callback(campaign);}); 最佳答案 我终于找到了您要找的方

javascript - Mongoose 找到多个匹配项

我是这项技术的新手,正在使用使用Mongoose的Node和Express服务器。我有以下文档集合架构。varempSchema=newmongoose.Schema({ _id:String, orgName:{type:String,required:true}, locName:{type:String,required:true}, empName:{type:String,required:true}});在这里,我在请求中获得了位置名称列表,例如“NewYork”、“London”、“Paris”等...,并且需要在响应中返回文档,如下所示...{result:[{locN

arrays - 如何在 mongoose/mongodb 的文档中获取对象数组中的对象?

这是文档的结构。{"_id":ObjectId("5548b2b79b9567341c77d352"),"messages":[{"subject":"freshsubject","from":ObjectId("5534b2992a104ed914435c31"),"_id":ObjectId("5548b5dab9279faf1c1b8688"),"created":ISODate("2015-05-05T12:21:46.261Z"),"read":true,"message":"freshmessage","participants":[ObjectId("5534b2992a