草庐IT

mongoose-middleware

全部标签

javascript - 对 MongoDB 的多个 mongoose count() 查询

首先:我->MongoNoob,我知道已经有人以这样或那样的方式问过这个问题,但直到现在我还没有发现任何具体的问题。假设我有两个这样描述的Moongoose模型:varpollSchema=mongoose.Schema({title:String,choices:[{content:String}]});varchoiceSchema=mongoose.Schema({poll_id:mongoose.Schema.ObjectId,option:Number});一个UI显示投票,当用户选择一个选项时,它被写入choiceSchema模型。现在我想创建一个“统计数据”,告诉我有多少

node.js - mongodb 合并等效(与 Mongoose )

我有一个本地化集合,其中每个文档都是翻译成多种语言的键值对。这是一个JSON表示:[{"_id":"form.password","en":"Password","he":"סיסמא","ru":"пароль"}{"_id":"form.email","en":"Email","he":"אימייל"},{"_id":"form.firstname","en":"FirstName","he":"שםפרטי","ru":"Имя"}]这是一个Mongoose模式:newSchema({_id:{type:String,required:true},en:String,he:St

node.js - Mongoose 使用 GeoJSON 点作为查询参数调用 geoNear 不起作用

给定一个为包含GeoJSON位置的文档定义的架构;varBranchSchema=newSchema({location:{'type':{type:String,required:true,enum:['Point','LineString','Polygon'],default:'Point'},coordinates:[Number]},name:String});BranchSchema.index({location:'2dsphere'});和一些示例数据:[{"name":"A","location":{"type":"Point","coordinates":[153.

node.js - 将 Mongoose 连接传递给模块

我正在编写一个Node模块,它将对MongoDB执行查询。我的模块应该将MongoDB连接作为参数(当我使用newMyModule(db)初始化它时)并在其中使用它。我使用的是没有任何NPM模块的标准MongoDB,并且我在我的db变量中传递了与MongoDB的连接。现在我要切换到Mongoose,但找不到将Mongoose连接传递到我的模块的方法。我不想在我的模块内初始化Mongoose连接,因为我想与我的测试和其他模块共享它。我该怎么办?我试过将mongoose传递给我的模块,但它不起作用“不是函数”。编辑:阅读@NeilLunn的回复后,我发布了我的模块示例:(function(

node.js - 覆盖特定模型的 Mongoose 查询

我想在不影响其他模型的情况下,为与特定Mongoose模型相关的所有查询自动添加查询选项我看到了这个answer其中Mongoose.Query被修补,这将影响所有Mongoose模型。 最佳答案 我能够为我的软删除项执行此操作。不过还没有对其进行广泛的测试。functionfindNotDeletedMiddleware(next){this.where('deleted').equals(false);next();}MySchema.pre('find',findNotDeletedMiddleware);MySchema.p

node.js - 如何从 Node 中的 Mongo 访问 `findAndModify` 方法(使用 Mongoose)?

这是/models/joke.js:varmongoose=require('mongoose'),database=mongoose.connect('localhost','joke',{server:{poolSize:3}});varjokeSchema=mongoose.Schema({content:String,upvotes:{type:Number,default:0},downvotes:{type:Number,default:0},views:{type:Number,default:0},published:{type:Boolean,default:true

node.js - 我想找到填充或搜索, Mongoose

我的模型代码:varuser=mongoose.Schema({email:....password:.....name:...company:...position:....phoneNumber:...signDate:Date,friends:[{type:mongoose.Schema.Types.ObjectId,unique:true,ref:'user'}],accessToken:.....});和:varfriend=mongoose.Schema({friends:[{type:mongoose.Schema.Types.ObjectId,unique:true,r

mongodb - Mongoose 模式,如何在一个模式中嵌套对象?

在我的Mongoose模式中,我定义了一些数据类型和两个对象数组。第一个对象菜应该没问题。但在第二个嵌套对象顺序中,我想将第一个对象dish包含进去,但我不知道如何正确执行此操作。module.exports=function(mongoose){varShopSchema=newmongoose.Schema({shopName:{type:String,unique:true},address:{type:String},location:{type:[Number],index:'2d'},shopPicUrl:{type:String},shopPicTrueUrl:{type

node.js - mongoose 聚合使用 $exists in $cond

如果一个字段存在但不是它的值,我想$project,使用mongoosemodelaggregate询问。如果可以在$cond中使用$exists,它看起来应该是这样的:$project:{b:{$cond:{if:{$exists:['$b',true]},then:true,else:false}}}但是,我必须在$cond运算符中使用boolean表达式。在MongoDBshell中,我可以执行类似的操作:{$eq:['$b',undefined]}它产生了预期的结果,但是由于某些原因,使用mongoose模型aggregate,它总是以true结果。例如,如果我有以下文件:{"

javascript - mongoose 和 nodejs 的 mongodb 连接超时错误

我迫切需要一些帮助。我正在尝试使用mongoose和nodeJS将大文件(8GB)上传到gridfs。但是由于文件很大,上传需要一些时间。过了一会儿,我收到以下错误:home/user/FileUpload/node_modules/mongodb/lib/utils.js:98process.nextTick(function(){throwerr;});^MongoError:connection0to127.0.0.1:27017timedoutatFunction.MongoError.create(/home/user/FileUpload/node_modules/mong