gpt4 book ai didi

node.js - 蒙戈 : query on subdocs

转载 作者:太空宇宙 更新时间:2023-11-04 01:10:10 25 4
gpt4 key购买 nike

您好,我在推送新子文档之前检查子文档是否存在时遇到此问题。

var UserSchema = new Schema({
name : String,
app_key : String,
app_secret : String,
tasks : [{type: Schema.ObjectId, ref: 'Task'}] // assuming you name your model Task
});

var TaskSchema = new Schema({
name : String,
lastPerformed : Date,
folder : String,
user : {type: Schema.ObjectId, ref: 'User'} // assuming you name your model User
});

这样,您对所有用户(包括其任务数组)的查询可能是:

User.findOne({...}).populate('tasks').run(function(err, user) {
var subdoc = user.tasks.id(mytask.id);
if(subdoc){
//not exist
//push
}
});

这是错误:

TypeError: Object  has no method 'id'

最佳答案

您收到该错误是因为没有为“任务”子文档定义“id”字段。您可能指的是“user.tasks._id”,它将返回 MongoDB 默认添加到其文档中的 ObjectId。

关于node.js - 蒙戈 : query on subdocs,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18694157/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com