Articles of mongoose

按date和时间按mongoose分类?

有人可以告诉我如何根据date和时间对一系列物品进行分类。 目前,我正在使用 image.find({reviewed:true }, null, {sort:{"submittedDate":-1}}, function (err, images) {}) 我的date模式是: submittedDate: Thu, 08 Nov 2012 15:42:47 GMT 但是这只是明智的select。 我想按时间先按datesorting 任何帮助将不胜感激。

为什么我不能用mongoose来validationembedded式文档? 什么是正确的方法来做到这一点?

我有这样的架构: var testSchema = new Schema({ foo: { type: String, required: true, trim: true }, bar: { fooBar: { type: String }, barFoo: { type: String } } }); 我必须根据foo值validationbar的值,如下所示: testSchema.path("bar").validate(function(bar){ if(this.foo === "someValue") //return custom validation logic 1 else if(this.foo === "anotherString") //return custom validation logic 2 else return false; }); 但是当我尝试打我的应用程序,我得到以下错误: /Users/Renato/github/local/prv/domain/models/testModel.js:34 testSchema.path("bar").validate(function(bar){ […]

Node.js摩卡unit testing错误重新:蒙哥马与Mockgoose嘲笑,“错误设置集合:会话TTL索引”

在GitHub上创build这个开放源码的应用程序,在Daftmonk的强大的Yeoman angular – 全堆生成器上构build的Outer / Partybot-web.git 。 我一直试图把我的技能包括在Node.js的testing(本地和CI)期间做MongoDB mock这个似乎很热的当代问题。 我是摩卡的粉丝,因为奔跑和柴的断言。 在淘汰了许多早期的竞争者之后,我现在正在用Mockgoose来嘲讽Mongoose模型来代替MongoDB。 在Travis的开放源代码partybot-web CI中也可以看到与这个问题有关的版本 到目前为止,这种configuration已经能够成功运行一些数据库操作,certificate了Mockgoose不是完全浪费时间。 然而,这个“会议”表似乎是在扼杀它。 请参阅下面的示例本地执行(Ubuntu 12),并让我知道如果任何节点向导有一个智慧的明珠… 非常感谢! -缺口 nick@om-ultrabook-ubuntu:~/Development/partybot-web$ mocha test/server/api/incoming/sms.js info – socket.io started Express server listening on port 3000 in development mode Error: Error setting TTL index on collection : sessions at /home/nick/Development/partybot-web/node_modules/connect-mongo/lib/connect-mongo.js:161:23 at /home/nick/Development/partybot-web/node_modules/connect-mongo/node_modules/mongodb/lib/mongodb/db.js:1404:28 at /home/nick/Development/partybot-web/node_modules/connect-mongo/node_modules/mongodb/lib/mongodb/db.js:1542:30 at /home/nick/Development/partybot-web/node_modules/connect-mongo/node_modules/mongodb/lib/mongodb/cursor.js:159:22 at commandHandler (/home/nick/Development/partybot-web/node_modules/connect-mongo/node_modules/mongodb/lib/mongodb/cursor.js:678:48) […]

Node&Mongoose – 保存时出错:TypeError:Object.keys在非对象上调用

在下面的用户架构中有一个foobar.events字段,我试图推送新的哈希(从API POST请求接收)到。 var userSchema = mongoose.Schema({ foobar: { id : String, token : String, email : String, name : String, events : [{ action : String, timestamp : Date, user_xid : String, type : {type: String}, event_xid : String }] } }); 这是Express路线的逻辑: app.post('/foobar/post', function(req, res) { var jb_user_xid = req.body['events'][0]['user_xid']; var jb_timestamp = req.body['events'][0]['timestamp']; […]

在MongoDB中列出涉及用户的每个对话的最后一条消息

让我们说我有一个看起来像这样的消息的mongo数据库: { "_id": ObjectId("5458009c1ab2354c029d7178"), "to": "dan", "from": "wood", "message": "hi dan how are you?", "time": new Date(1415053468590), "__v": 0 } { "_id": ObjectId("545800b45eaf364d026c1cba"), "to": "wood", "from": "dan", "message": "hi wood how are you?", "time": new Date(1415053492125), "__v": 0 } { "_id": ObjectId("5458009c1ab2354c029d7178"), "to": "billy", "from": "wood", "message": "hi billy how are you?", "time": new Date(1415053468590), […]

MongoDB / Mongoose索引使查询更快或减慢?

我有这样的文章模型: var ArticleSchema = new Schema({ type: String ,title: String ,content: String ,hashtags: [String] ,comments: [{ type: Schema.ObjectId ,ref: 'Comment' }] ,replies: [{ type: Schema.ObjectId ,ref: 'Reply' }] , status: String ,statusMeta: { createdBy: { type: Schema.ObjectId ,ref: 'User' } ,createdDate: Date , updatedBy: { type: Schema.ObjectId ,ref: 'User' } ,updatedDate: Date ,deletedBy: { type: […]

“Node.js中的某些MongoDB ObjectID”的参数必须是“string”

我在Node中得到这样的错误: TypeError: Argument must be a string at TypeError (native) at Buffer.write (buffer.js:791:21) at serializeObjectId <snip> 这些条件是ObjectID在使用MongoDB进行查找操作时的一些用法。 ObjectID的一些用法引发了这个错误,有些则没有。 唯一重要的是ObjectID来自哪里。 如果它是从现有的collections拉,它的工作。 如果我自己生成它(例如,使用ObjectID.createFromHexString),它失败,如上所述。

mongoose – 将全局方法添加到所有模型

简单的问题: 我如何在Mongoose中将模型添加到我的模型中,该模型适用于每个模型而不仅仅是一个模型?

mongoose:如何build模一个外键/逆关系?

我正在使用Mongoose来模拟Person和Transaction集合,其中每个Transaction都将引用两个不同的Person实例: var TransactionSchema = new Schema({ , amount : { type: Number, required: true } , from : { type: ObjectId, required: true } , to : { type: ObjectId, required: true } , date : Date }); var PersonSchema = new Schema({ name : { type: String, required: true } , transactions : [ObjectId] […]

在Mongoose中searchembedded对象

例如,如果我有以下架构(为了简洁,大大简化)。 如何通过标签searchpost? 我知道如果这个标签文档集合被embedded,但是我想把Tag放在他们自己的集合中。 PostSchema = new Schema({ title: String body: String tags: [{type: Schema.ObjectId, ref: 'Tag' }] }); TagSchema = new Schema({ name: String }); // Here is what I've tried Post.find({'tags.name':'javascript'}) .populate('tags') // Is it necessary to join the collections? .run(function(err, posts) { console.log('posts: ', posts); });