草庐IT

mongoose-im

全部标签

node.js - 使用 auth 的 MongoDB/Mongoose 3.x 副本集故障转移/重新连接代码的一个很好的例子是什么?

我正在模拟MongoDB副本集降压,并尝试让我的应用程序和驱动程序自动使用新的主要成员,而无需重新启动我的应用程序。现在,一旦降压发生,查询就会挂起并最终超时。有人可以分享一些与Mongoose3.x和最新版本的mongodb-node-native驱动程序(1.1.2)一起使用的正确配置的副本集连接字符串的示例代码吗?请注意:我正在使用身份验证。这是一个2Node+1仲裁器设置。 最佳答案 请升级到mongoose3.0.2,它修复了3.x版本。 关于node.js-使用auth的Mo

node.js - Mongoose 嵌入式文档主细节回调序列

我尝试在子项的预保存Hook中执行一些操作,但它似乎从未被触发。我只解雇了大师的预保存Hook。我在Javascript中的模型varmongoose=require('mongoose');mongoose.connect("localhost","test_master_details");varmasterSchema=mongoose.Schema({title:{type:String,required:true},childs:[childSchema]});masterSchema.pre('save',function(next){console.log("master

node.js - 尝试在 Restify API 中使用 Mongoose 保存模型时不会返回响应

我正在使用Restify和Mongoose为NodeJS构建API。在找到用户并验证其密码后的下面方法中,我试图在将响应发送回用户之前保存一些登录信息。问题是响应永远不会返回。如果我将响应放在保存调用之外和之后,数据永远不会持久保存到MongoDB。难道我做错了什么?过去2天我一直在做这方面的工作,所以帮助会很大。login:function(req,res,next){//Gettheneededparametersvaremail=req.params.email;varpassword=req.params.password;//Iftheparamscontainanemail

node.js - 带有 mongoose 子文档的 HTTP PATCH 语义

我有一个包含多个Layer子文档的Map文档,并且想要实现HTTPPATCH,因此只有给定的JSON属性应该更新Layer子文档。以下代码有效,但我必须指定可以更改的每个属性。有更好的方法吗?varupdate={};if(req.body.name!==undefined)update['layers.$.name']=req.body.name;if(req.body.isDefault!==undefined)update['layers.$.isDefault']=req.body.isDefault;if(req.body.isPublic!==undefined)updat

mongodb - Meteor.js 和 Mongoose 兼容性

我想主要在服务器端使用带有meteor的MongooseORM,直到meteorRelease模式方法。我可以在Meteor方法中调用MongooseORM操作并使用Mongoose检索方法(如findById)发布。如果我以这种方式处理事情,我会错过任何潜在的问题或meteor特征吗? 最佳答案 不幸的是,有问题。我们想做同样的事情,但是(开箱即用)mongoose包不使用Meteor的DDP协议(protocol),并且在您进行CRUD操作时不会触发react性。Fibers/etc也可能存在问题,尽管我们对Mongoose的插

node.js - 蒙戈/ Mongoose : cleanup orphaned refs

假设我们使用引用作为模型的典型一对多关系为suggestedbyMongoDBofficialdocumentation:varUser=mongoose.Schema({});varGroup=mongoose.Schema({user:[{type:mongoose.Schema.Types.ObjectId,ref:'User'}]});我们还假设我关心用户出现在组中的顺序,因此数组是必需的。现在,让我们假设用户已被删除——并且出于某种原因,组没有使用$pull进行维护。如果您使用Mongoose的populate,一切看起来都很好,但是垃圾仍然存在于数组中。有没有办法识别孤立的

mongodb - Mongoose中sub docs和population的区别以及对数据库schema的疑惑

我是MongoDB和MongooseJS的新手。我也很不擅长创建数据库,抱歉。第一个问题子文档和人口有什么区别?看着docsexample,Parent-Childrensubdoc似乎与Person-Stories群体非常相似。数据库架构问题场景:用户可以创建多个Canvas。每个Canvas都可以承载多个Shapes。每个形状可以有两种类型:简单或复杂。简单形状可以是正方形或圆形(对象)。复杂形状由框架和Material组成。Canvas|Shape/\SimpleComplex:Frame,Material/\SquareCircle现在,一个Shape只能分配给1个Canvas

javascript - 来自 Mongoose 的类型错误

我做了一个express应用,里面有一个叫做users的应用。我正在使用typescript。这是我的app.js文件的样子://///////importexpress=require("express");importhttp=require("http");importpath=require("path");importus=require("./routes/Users");varapp=express();//allenvironmentsapp.set('port',3000);app.set('views',__dirname+'/views');app.set('vi

node.js - 使用 Mongoose 测试异步中间件功能

我在Mongoose中使用save中间件来在采取某些操作时在数据库中创建事件日志。有点像UserSchema.post("save",function(doc){mongoose.model("Activity").create({activity:"Usercreated:"+doc._id});});这似乎工作正常,但问题是我无法测试它,因为无法将回调传递给post(这可能不会说得通)。我使用mocha对此进行了测试:User.create({name:"foo"},function(err,user){Activity.find().exec(function(err,act){

mongodb - Mongoose 的mapreduce函数错误

我正在尝试执行MapReduce函数,但是,我不知道为什么,它会返回下一个错误:{[MongoError:exception:assertionsrc/mongo/db/commands/mr.cpp:424]name:'MongoError',errmsg:'exception:assertionsrc/mongo/db/commands/mr.cpp:424',code:0,ok:0}我的代码:O.query={userto:id,userfrom:{$exists:true}};//"id"isavarO.map=function(){emit(this.userfrom[0],