草庐IT

mongoose-plugins

全部标签

node.js - 无法加载 c++ bson 扩展,使用纯 JS 版本——没有 Mongoose ,没有 express ,只有 Node 驱动程序

我完成了一个非常简单的mongodb教程,其中我们使用mongoshell创建了一个数据库,创建了一个集合,然后编写了一个非常简单的nodejs程序来访问集合并将文档记录到控制台。varmongodb=require('mongodb');vardb=newmongodb.Db('mcfly',newmongodb.Server('127.0.0.1',27017),{safe:true});db.open(function(err){db.collection('mathpeeps',function(err,collection){collection.find().toArray

node.js - 使用 mongoose 和 node.js 的多态用户模型

我正在使用mean.js样板制作应用程序。它是一个招聘引擎,用户是雇主和候选人。现在雇主和求职者应该作为单独的文件存储,每个用户必须只有一个雇主或求职者,因为每个求职者或雇主都需要使用用户对象登录。我在rails中用postgresql做了这个:##Userbelongs_to:profileable,:polymorphic=>true##CandidateandEmployerhas_one:user,:as=>:profileable对于mongoose,这是我到目前为止使用包“mongoose-schema-extend”所做的:varextend=require('mongo

node.js - Mongoose 在数组中选择 $ne

我想知道您将如何查询wherearray._id!='someid'。这是我为什么需要这样做的一个例子。用户想要更新他们的帐户电子邮件地址。我需要这些是唯一的,因为他们使用它来登录。当他们更新帐户时,我需要确保新电子邮件不存在于另一个帐户中,但如果它已经存在于他们的帐户中,请不要给出错误(他们没有更改他们的电子邮件,只是他们个人资料中的其他内容).以下是我尝试使用的代码。它不会给出任何错误,但它总是返回0的计数,因此即使错误也永远不会产生。Schemas.Client.count({_id:client._id,'customers.email':email,'customers._i

node.js - Mongoose 聚合 - $减去日期

我在尝试减去两个日期以获得毫秒数差异时遇到了Mongoose聚合问题。文档结构如下:DeliverySchema=newmongoose.Schema({hash:String,status:Number,insertedOn:{type:Date,default:Date.now},endedOn:{type:Date}},{collection:'Deliveries'});这是查询:varDelivery=mongoose.model('Delivery');returnDelivery.aggregate([{$match:{'insertedOn':{$ne:null,$ty

node.js - Mongoose 错误 - 升级后没有 'toObject' 方法

我有一个Mongoose模型,我在其中调用Hook中的toObject方法:Product.post('init',function(){//if(typeofthis.toObject==='function')-worksbutwhydoIneedit?this._original=this.toObject();});这在过去工作得很好但是在Mongoose升级后抛出这个错误:TypeError:Object#hasnomethod'toObject'atEventEmitter.Product.pre.self(/opt/run/snapshot/package/models/

node.js - 在 Mongoose 中将数组更新到文档中

我有一个包含对象的json数组,我正在执行以下循环以使用mongoose将数据向上插入(插入或更新)到MongoDB中:varcurrentMiniApp;functionretResult(err){if(err){console.log(err);}}for(vari=0;i如何在不使用循环的情况下在一条命令中完成?我希望文档将包含数据数组中的项目我的数据如下:{"miniapps":[{"id":"app1","icon":"256fko6.png"},{"id":"app2","icon":"icon60x60.png"}]} 最佳答案

node.js - Mongoose - 如何按属性值查询子文档

我正在尝试获取一系列未付款订单。订单子(monad)文档有一个属性isPaid定义订单是否已经支付。在我看来,我只想显示尚未支付的订单。这是我的架构:varorder=newSchema({content:[{product:{type:String,required:true},quantity:{type:Number},vatRate:{type:Number,required:true},price:{type:Number}}],isPaid:{type:Boolean,default:false},number:{type:Number}});varclientSchema

node.js - Mongoose 查找和删除

我正在尝试删除满足查询的多个文档。但是,我需要将这些文档的数据存储在单独的集合中以实现撤消功能。我让它工作的唯一方法是使用多个查询:Data.find(query).exec(function(err,data){Data.remove(query).exec(function(err2){ActionCtrl.saveRemove(data);});});有没有更好的方法?在这篇文章中:HowdoIremovedocumentsusingNode.jsMongoose?建议使用find().remove().exec():Data.find(query).remove().exec(

node.js - Mongoose : associate a . 项目(聚合)与 .find().limit().sort() 等

我有一个看起来像这样的Mongoose模式:varAnswerSchema=newSchema({author:{type:Schema.Types.ObjectId,ref:'User'},likes:[{type:Schema.Types.ObjectId,ref:'User'}],date:{type:Date,default:Date.now},text:String,....});截至目前,我通过执行以下操作查询此集合:Answer.find({author:profileId,date:{$lt:fromDate}}).sort({date:-1}).limit(25).p

node.js - 如何获取今天用 Mongoose 创建的文档数量?

如何获取今天用mongoose创建的文档数?我正在使用MEAN堆栈。我读了MongooseApiDocs但什么都不懂:/ 最佳答案 默认是没有办法的。除非您明确将其存储在MongoDB中,否则文档没有与其关联的创建日期。换句话说,您的Mongoose模式应该有类似created的字段:constblogSchema=newSchema({created:{type:Date,default:Date.now}});然后搜索匹配的文档:constnow=newDate();consttoday=newDate(now.getFullY