小编Its*_*Jay的帖子

如何根据嵌套对象的ObjectId删除它?

我的课程集合有这个嵌套架构,每个课程中有一个会话数组,每个会话中有一个学生数组,每个学生都是一个对象,由 userName 的属性和引用我的用户集合的 ObjectId 值和另一个属性组成名称包含一些数字的状态。

我想从会话的学生数组中删除一个学生对象及其 _id。

我知道可以展开数组来获取单个对象,但我需要一种巧妙的方法,例如使用 objectId 从数据库中删除对象,这样我们就不必指定路径,例如直接删除或修改嵌套子文档。

这是我的课程架构:

 CourseSchema = new mongoose.Schema({
    name:String,
    sessions:[
        {
         date:Date,
         students :[{
             userName:{
                type:mongoose.Schema.Types.ObjectId,
                ref :'users'
             },
             status:Number
         }]   
        }
    ]
})
Run Code Online (Sandbox Code Playgroud)

aggregate mongoose mongodb node.js express

3
推荐指数
1
解决办法
1565
查看次数

标签 统计

aggregate ×1

express ×1

mongodb ×1

mongoose ×1

node.js ×1