草庐IT

mongoose-middleware

全部标签

javascript - 如何计算 Mongoose 中具有一个不同字段的记录?

在为nodejs探索mongoose时,我遇到了需要知道我的集合中的用户数量的问题:我的收藏有记录,每条记录都有一个用户。我想知道唯一(不同)用户的数量。如何使用mongoose执行此操作?编辑:数据库增长得非常快,有没有办法从数据库中取回数字而不是获取所有不同的记录并计算它们? 最佳答案 这是一个替代答案,因为当我尝试使用Reddest的Mongoose3.1.2方法时出现异常(对我来说这似乎是Mongoose中的一个错误,因为Reddest的方法应该没问题)。您可以在集合的模型上调用distinct方法,指定该集合的用户标识字段

javascript - Jasmine spyOn mongoose 保存

我想模拟Mongoose模型的save()函数。我要测试的函数在名为user.js的文件中如下所示:varUser=import('User.js')post:function(req,res){varuser=newUser({password:req.body.password,email:req.body.email,});user.save(function(err){if(err){....}else{....}});我试图在另一个名为user_spec.js的文件中编写如下所示的测试:varHander=require('user.js')it('worksproperly

javascript - react redux promise middleware 如何将结果 action 发送到 dispatch?

我正在尝试通过reactredux了解promises的中间件docs但不理解下面的then部分:constvanillaPromise=store=>next=>action=>{if(typeofaction.then!=='function'){returnnext(action)}returnPromise.resolve(action).then(store.dispatch)}then如何知道要分派(dispatch)什么?该操作没有像这样的参数传递returnPromise.resolve(action).then(function(action){store.dispa

javascript - 使用 Mongoose 在 JSLint 中抑制 `Expected an identifier and instead saw ' default'(保留字)

我正在使用jshint来验证我的JavaScript文件。在服务器端,我将node.js与Mongoose结合使用。在Mongoose中,我被鼓励以如下方式编写模式:varUserSchema=newmongoose.Schema({firstname:{type:String,default:''}});运行linting时,出现错误:Expectedanidentifierandinsteadsaw'default'(areservedword).有没有办法抑制这个错误?我真的更喜欢这种行为而不是写作:varUserSchema=newmongoose.Schema({firstn

javascript - node.js 链接多个 promise (使用 Mongoose )

以下是我正在处理的一个典型的promise函数。var_delete=function(t,id){returnPromise.cast(Event.find({where:{id:id}},{transaction:t})).then(function(d){if(d){//-------(*)returnPromise.cast(d.updateAttributes({status:-1},{transaction:t})).then(function(){//doinventorystuffreturnPromise.cast(Inventory.update({}).exec(

javascript - 我应该如何正确使用 Mongoose 填充?

我正在学习一些Node并且一直在尝试使用Mongoose。目前,我的目标是学习如何使用populate.我有一个projects定义和milestone要求:projectSchema=newmongoose.Schema({id:String,title:String,description:String,owner:String,site:String,creation_date:Date,milestone_ids:Array,milestones:[{type:mongoose.Schema.Types.ObjectId,ref:"Milestone"}]})Project=m

javascript - 使用 nodejs 、 express 和 mongoose 的 bluebird Promisies crud 示例

我的friend们,不幸的是我找不到任何关于如何在nodejsexpressmongoose应用程序中实现bluebirdpromise库的示例。我的应用程序设置中Mongoose模型、Controller和路由位于不同的文件中。但是用mongoose实现它,我就是想不通。所以请有人告诉我它是如何使用的。请看下面。//expresscontrollerArticle.jsvarmongoose=require('mongoose'),errorHandler=require('./errors'),Article=mongoose.model('Article');exports.li

javascript - 类型错误 : getState is not a function when adding middleware to Redux

在我的configureStore.dev.js文件中使用此代码,在添加applyMiddleware(reduxImmutableStateInvariant)时,我得到一个UncaughtTypeError:getStateisnotafunction。当我删除这个添加的中间件时,我的项目运行正常。添加此中间件的正确方法是什么?这是完整的文件:import{createStore,compose,applyMiddleware}from'redux';importrootReducerfrom'../reducers';importreduxImmutableStateInvari

javascript - 在 "Actions must be plain objects. Use custom middleware for async actions."中使用 Jest 模拟结果

我有几个Redux-Thunk风格的函数,可以在一个文件中分派(dispatch)其他操作。其中一个Action将另一个作为其逻辑的一部分进行分派(dispatch)。它看起来类似于:exportconstfunctionToMock=()=>async(dispatch)=>{awaitdispatch({type:'abasicaction'});};exportconstfunctionToTest=()=>async(dispatch)=>{dispatch(functionToMock());};在我实际遇到的情况下,这些函数都涉及更多,并且每个都分派(dispatch)多个

javascript - Mongoose - 无法填充路径通知排序。因为它是文档数组的子属性

我有一个非常简单的mongo方案,我正在使用mongoose访问我可以使用填充将用户名和名字映射到每个通知的发件人字段,问题是我似乎无法对日期字段进行任何排序使用这段代码我得到一个错误MongooseError:Cannotpopulatewithsortonpathnotifications.frombecauseitisasubpropertyofadocumentarray是否有可能以不同的方式或更新的方式(深度填充、虚拟)做到这一点?我正在使用Mongoose5。我宁愿不使用vanillajavascript之后对对象进行排序或创建一个单独的模式varUserSchema=ne