草庐IT

mongoose-dbref

全部标签

mongodb - Mongoose Schema 中索引的用途

我正在尝试在集合中添加独特的文档。但是问题是我想根据2个字段来确定唯一性。所以我在网上找到了解决方案。令我困惑的是,INDEX的目的是什么?在RDBMS中,索引通常用于行ID,这是什么意思,它如何影响唯一性?varpatientSchema=mongoose.Schema({name:String,fatherOrHusbandName:String,address:String,});patientSchema.***index***({email:1,sweepstakes_id:1},{unique:true}); 最佳答案

node.js - 如果字段设置为 null,则恢复为 mongoose 中的默认值

我在nodeJS中使用mongoose。考虑以下架构:varPersonSchema=newmongoose.Schema({"name":{type:String,default:"Human"},"age":{type:Number,defualt:20}});mongoose.model('Person',PersonSchema);varorder=newOrder({name:null});这将创建一个名称设置为null的新Person文档。{name:null,age:20}有没有检查正在创建/更新的属性是否为空,如果为空,则将其设置回默认值。以下声明varorder=ne

node.js - 什么是 Mongoose ODM 的 ObjectId?

查看MongooseODMdocs,它并没有真正说明什么是ObjectId的以及如何使用它们。我认为它类似于MongoDB中的外键?如果是这样,EmbeddedDocuments似乎可以达到相同的目的,我什么时候使用哪个? 最佳答案 阅读MongoDB文档或快速MongoDB介绍(如TheLittleMongoDBBook)将是非常值得的。(它是免费的)有关MongoDB概念的一些背景知识。回答你的问题:安ObjectID是一个唯一的12字节标识符,可以由MongoDB生成作为集合的主键(_id)。有一个specificationf

javascript - Mongoose 中嵌入文档的重复键错误索引

我正在尝试使用mongoose运行这个简单的嵌入式文档:varmongoose=require('mongoose');varPageSchema=newmongoose.Schema({url:String});varAlbumSchema=newmongoose.Schema({pages:[PageSchema]});mongoose.model('Album',AlbumSchema);varAlbum=mongoose.model('Album');varalbum=newAlbum({pages:[{url:"1"}]});album.save(function(err,a

node.js - 在 Mongoose 中跨整个应用程序共享数据库连接

随着最新的mongoose更新,您不能再像我以前那样使用用户模型了。我需要在我的整个应用程序中共享相同的数据库连接。https://github.com/LearnBoost/mongoose/issues/1249这是不再有效的旧方法:./models/user.jsvarmongoose=require('mongoose'),cfg=require('../config'),Schema=mongoose.Schema,db=mongoose.createConnection(cfg.mongo.uri,cfg.mongo.db);...module.exports=db.mod

node.js - Mongoose QueryStream 新结果

我正在尝试设置MongooseJS当另一个应用程序将新文档插入到集合中时,推出整个集合(或只是最新的项目)。我假设QueryStream是要走的路。但是,当我启动我的简单应用程序时,它会读出一次集合,然后将其关闭。当我插入一个新文档时没有任何反应(假设连接不再打开并寻找新结果...?)varOrders=db.model('orders',OrderSchema);varstream=Orders.find().stream();stream.on('data',function(doc){console.log('Newitem!');console.log(doc);}).on('

javascript - Mongoose 文档过滤属性

我已经定义了一个架构varUserSchema=newSchema({firstName:{type:String,required:true},lastName:{type:String,required:true},email:{type:String,required:true},location:{type:String,required:true},picture:{type:String,required:true},passwordHash:{type:String,required:true},resetPasswordToken:String,resetPasswor

node.js - 在 Mongoose 中设置查找后转换 Hook 的最简单方法

我是Mongoose的新手,已经获得了一个需要扩展的项目。我很快掌握了pre和posthooks的概念,但想知道为什么find没有这样的hooks,而只有save和delete.在检索到的对象上设置一些转换的最简单方法是什么?当然,我想在模型级别这样做,而不是每次检索一些对象时都这样做。我找到了这个插件:https://www.npmjs.com/package/mongoose-post-find我认为它会很好地完成这项工作,但由于我是MongoDB的新手,我想在这里问一下,以确保我不会遇到性能问题。 最佳答案 这就是'init'

javascript - Node.js - Mongoose - 使用 req.body 中的所有值更新嵌套数组

我有一个看起来像这样的对象。{_id:'577fe7a842c9b447',name:'Jacob\'sBronzeBadges',competitors:[{_id:'577fe7a842c9bd6d',name:'Peter\'sSilverBadges',sites:[{_id:'577fe7a842c9bd6d',name:'Facebook',url:'fb.com/peter'},{_id:'577fe7a842c9bd6d'name:'Google',url:'google.com/peter'}]},{_id:'599fe7a842c9bd6d',name:'Paul\

mongodb - 无法使用 Node.js Express MongoDB Mongoose CoffeeScript 进行 POST

更新:我找到了解决方案,请查看本页底部...我有一个用CoffeScript编写的Node.js、Express、MongoDB、Mongoose项目,我可以创建和读取数据,但无法更新。这是我的代码的样子;应用程序.js#updateapp.put"/admin/:id.:format?",(req,res)->Content.findByIdreq.body.content.id,(err,c)->c.title=req.body.content.titlec.body=req.body.content.bodyc.save(err)->switchreq.params.format