草庐IT

mongoose-encryption

全部标签

node.js - Mongoose 排除字段

使用mongoose是否可以在没有选择链接的情况下填充时排除字段?在这种情况下,我需要省略作者电子邮件和散列密码:.populate(ratings,{path:'reviews.author',model:'User'},function(err,ratings){...}); 最佳答案 尝试以下方法;Model.find(...).populate({path:'reviews.author',model:'User',select:'-email-password'}).exec(callback);这将排除email和pas

node.js - 如果 unwind 应用于在 mongoose 中使用聚合时不存在的字段,将会发生什么

假设我正在使用$unwind在Mongoose模式中的字段上根据上面的链接,如果字段不存在,则unwind将忽略输入文档我怎样才能防止这种情况发生,即使字段不存在,即不忽略输入文档,也不会在没有展开过程的情况下返回查询结果ifaparticularfieldexistsIwanttodounwindandsomemorestuff(projectandgroup)elseIwantinputdocumentnochangesinthiscase 最佳答案 AccordingtotheabovelinkIffieldisnotpres

javascript - 如何在 Mongoose 模式中添加子文档

我正在尝试在node.js/Express的mongoose模式中创建一个子文档。我有两个模式:成员和地址成员(member).js//app/models/member.js//loadmongoosesinceweneedittodefineamodelvarmongoose=require('mongoose'),Schema=mongoose.SchemavarAddress=require('./address');varMemberSchema=Schema({FName:String,LName:String,address:[Address],phone:{type:S

node.js - 在 mongoose 中填充 'find' 的 post hook middlewhere

我有一个文章架构,用于用户在我的网站上发布的文章。它引用了用户集合:varArticleSchema=newSchema({title:{//NOMARKDOWNFORTHIS,juststraightuptextforseparatingfromcontenttype:String,required:true},author:{type:Schema.Types.ObjectId,ref:'User'}});我想在所有find/findOne调用上有一个posthook来填充引用:ArticleSchema.post('find',function(doc){doc.populate

node.js - Mongoose 按填充字段排序

好吧,我有以下shemas:varBrandSchema=newSchema({name:{type:String,required:true,index:{unique:true},lowercase:true},logo:{type:ObjectId,ref:'Image'}});varFollowActionSchema=newSchema({'actionDate':{type:Date,'default':Date.now},'brand':{type:ObjectId,ref:'Brand'},'performer':{type:ObjectId,ref:'User'},'

node.js - Mongoose 无法更新我的文档

我需要批量删除feedback到article、comment或reply实体。这是我的实现exports.batchDeleteFeedback=function(req,res,next){vararticleId=req.body.articleIdvarcommentId=req.body.commentIdvarreplyId=req.body.replyIdvarTarget,targetId,fieldif(articleId){Target=ArticletargetId=articleIdfield='article'}elseif(commentId){Target

node.js - Mongoose 批量插入或更新文件

我正在开发一个node.js应用程序,我一直在寻找一种使用Model.save()函数的方法,因为我想同时保存许多文档,所以这会是一种浪费网络和处理一一进行。我找到了一种批量插入的方法。但是,我的模型有两个使它们唯一的属性,一个ID和一个HASH(我从API获取此信息,所以我相信我需要这两个信息来使文档唯一),所以,我希望如果我得到一个已经存在的对象,它将被更新而不是插入到模式中。有什么办法吗?我正在阅读有关使用Q进行并发调用以保存对象的内容,但是我仍然认为这会在Mongo服务器上产生不需要的负载,不是吗?Mongo或Mongoose是否有像插入一样批量插入或更新的方法?提前致谢

javascript - Mongoose Model.remove 回调没有给我删除的项目数?

基本上我有一个模型,当我对其调用remove时,返回的是一个我无法访问的对象。现在,当我调用remove时,我想访问已删除的项目数,但我无法访问。这是返回的内容:{'ok':1'n':0}这不是我想要的。我发现n是计数,但是当我试图通过count.n访问它时我做不到。这是我的删除代码Shift.remove({_id:req.body.id},function(err,count){if(err){console.log(err);res.json({success:false,message:'problemwithid'});}elseif(!err&&count===0){res

node.js - 具有不同对象方法的 Mongoose 多类型模式

当我有一个具有多类型属性的集合架构时。比如可以是数字也可以是字符串我为此使用了mongoose的混合类型,但所有验证都消失了。问题:varemployeeSchema=mongoose.Schema({_id:false,title:string,...});EmployeeSchema.methods.(....)//addsomemethodsvarGroupSchema=({visitor:{},//visitorcanbeanEmployeeschemaorastringofpersonnamenote:string,time:Date},{collection:'group'

javascript - 如何将新对象添加到 Mongoose 中的数组?

当我将新的评论文档推送到Mongoose的故事集中时,我不断收到以下错误:{[MongoError:Thefield'comments'mustbeanarraybutisoftypeObjectindocument{_id:ObjectId('55d2429477da83b6f593ce53')}]name:'MongoError',message:'Thefield\'comments\'mustbeanarraybutisoftypeObjectindocument{_id:ObjectId(\'55d2429477da83b6f593ce53\')}',driver:true,