jjzjj

population

全部标签

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

node.js - Mongoose : Populate nested schemas

这是关于Mongoose嵌套填充方法。我尝试使用populate方法来填充文档,但仍然有问题。varuserSchema=Schema({email:{type:String,required:true,unique:true},fullName:String,meetings:[{type:Schema.Types.ObjectId,ref:'Meeting'}]});userSchema.statics.findById=function(id,callback){this.findOne({_id:id}).populate({path:'meetings',select:'_c

node.js - mongoose 中的 populate 函数是做什么的?

当我阅读http://mongoosejs.com/docs/populate.html时,我不明白这个问题.我不完全理解populate函数的作用。我从meanjs示例源代码中获取它:Article.find().sort('-created').populate('user','displayName').exec(function(err,articles){if(err){returnres.status(400).send({message:errorHandler.getErrorMessage(err)});}else{res.json(articles);}});提前致

mongodb - Mongoose query.populate 只返回 objectId

当尝试填充一个字段时,所有返回的都是最初为该字段保存的objectid在models/gifts.jsvarGiftSchema=newSchema({name:String,owner:{user:{type:Schema.Types.ObjectId,ref:'User',required:false},nonRegisteredEmail:{type:String,required:false},nonRegisteredName:{type:String,required:false}},description:String,url:String}});module.expor

javascript - 使用 .populate() mongodb Node.js 的正确方法

我正在尝试将完整的用户模型附加到我的评论部分中的每条评论。由于mongodb没有连接,我一直在试图弄清楚如何使用.populate()从Controller添加用户对象。据我了解,要使用填充函数,您只需要做两件事。在模型中定义一个引用。对定义了ref的字段名称调用.populate()。我已将模型中的引用定义为“用户”模型:varcommentSchema=newmongoose.Schema({author:{type:String,ref:'User'},description:String,commentID:String,hasParent:String,parentComme

node.js - 无法从 Mongoose 访问 populate() 对象的属性?

这很奇怪...我使用带有ref的populate()来填充我的模式中的数组,但随后无法访问这些属性。换句话说,模式是这样的:newModel('User',{'name':String,'installations':[{type:String,ref:'Installations'}],'count':Number,}当然,Insallations是另一种模式。然后我找到并填充一组用户...model.find({count:0}).populate('installations').exec(function(e,d){for(varkind){varuser=d[k];for(v

node.js - populate涉及mongoose时如何返回文档内容数组

假设我有像这样的书籍和页面的Mongoose模型:mongoose.model("Book",newSchema({title:String});还有这个mongoose.model("Page",newSchema({pageNumber:Number,_bookId:{type:ObjectId,ref:"Book"}});每一页都记录它属于哪本书。现在我想要一个页面编号为500的书籍数组。我可以做以下事情:Page.find({pageNumber:500}).populate("_bookId").then(function(pages){varbooks=[];pages.f

mongodb - DbRef with Mongoose - mongoose-dbref 还是 populate?

我有以下2个模式:公司事件:varcompanyEventSchema=newSchema({name:String,descriptiondate:Date,attendees:[{type:Schema.ObjectId,ref:'Member'}],]});和成员varmemberSchema=newSchema({name:String,emailAddress:String,password:String,created:{type:Date,default:Date.now}});我从companyEventSchema引用Member的方式是否正确?我正在尝试做一些dbr

mongodb - 我可以使用 MongooseJS "populate"子文档数组中的属性吗?

关于mongoose的填充功能有很多SO问题,但我一直找不到证据证明这是否可行,如果可行,我做错了什么。假设我正在创建一个博客。耶。所有用户都可以撰写文章并对其他文章发表评论。我选择以这种方式建模:用户:varUserSchema=newSchema({name:String,email:{type:String,unique:true}});mongoose.model('User',UserSchema);带有嵌入式评论的文章:varArticleSchema=newSchema({title:{type:String},createdBy:{type:Schema.ObjectI

javascript - Mongoose.populate() 返回空数组而不是数据

我查找了其他问题,包括thisone但是我找不到解决我问题的答案。我已经按照officialdocumentationofmongoose中描述的相同方式定义了我的模型通过显示引用并将模型类型定义为Schema.Types.ObjectId。他们在这里:story_model.jsvarstorySchema=newSchema({...candidateParts:[{type:Schema.Types.ObjectId,ref:'StoryPart'}],...},{usePushEach:true});storyPart_model.jsvarstoryPartSchema=ne