Javascript 如何使用nodejs中的mongoose使数组对象的ObjectId引用同一Mongo集合中的其他数组?

Javascript 如何使用nodejs中的mongoose使数组对象的ObjectId引用同一Mongo集合中的其他数组?,javascript,node.js,mongodb,mongoose,Javascript,Node.js,Mongodb,Mongoose,我正在处理一个用例,在这个用例中,我需要将一个数组对象的对象Id存储在另一个数组对象中,作为同一集合的引用。请考虑以下内容: var mongoose = require("mongoose"); var schema = mongoose.Schema( { company : {type: mongoose.Schema.Types.ObjectId, ref: 'company', required: false}, timeline : [{

我正在处理一个用例,在这个用例中,我需要将一个数组对象的对象Id存储在另一个数组对象中,作为同一集合的引用。请考虑以下内容:

var mongoose = require("mongoose");
var schema = mongoose.Schema(
  {
    company     : {type: mongoose.Schema.Types.ObjectId, ref: 'company', required: false},

    timeline  : [{
                  status_id  : {type: mongoose.Schema.Types.ObjectId, ref: 'user_dropdowns', refquired: false},
                  message    : {type: String, required: false},
                  time       : {type: Date, default: Date.now(), required: false},
                  messagedBy : {type: mongoose.Schema.Types.ObjectId, ref: 'company_contacts', required: false}
                }],
    comments  : [{
                  timeLineId:{type:mongoose.Schema.Types.ObjectId, ref: 'tickets.timeline', required: false},
                  comment: {type: String, required: false},
                  commentedBy : {type: mongoose.Schema.Types.ObjectId, ref: 'company_contacts', required: false},
                  commentedTime : {type: Date, required: false, default: Date.now()}
                }]
  },
  {
    versionKey: false,
    timestamps: true
  }
);

module.exports = mongoose.model("tickets", schema, "tickets");

在我的收藏中,根据我的要求,我需要在
评论
中存储
时间线
的参考。可能吗?或者有其他选择吗?感谢您的任何帮助。谢谢

你好!要存储在
comments
中的
timeLineId
的值应该引用整个
timeline
数组,对吗?是的,我要存储整个数组的ObjectId@嗯,我认为这种引用是不可能实现的。这是因为
timeLineId
值是一个数组,它不在顶层存储_id或任何其他标识符属性。此外,注释和时间线数组都在同一个数据范围内,为什么要相互引用?从数据模式来看,每当您有注释时,您总是在进行获取时间线数据的操作,为什么还要对已经可用的数据进行额外的查询?我想根据时间线数据将注释分组到那里!要存储在
comments
中的
timeLineId
的值应该引用整个
timeline
数组,对吗?是的,我要存储整个数组的ObjectId@嗯,我认为这种引用是不可能实现的。这是因为
timeLineId
值是一个数组,它不在顶层存储_id或任何其他标识符属性。此外,注释和时间线数组都在同一个数据范围内,为什么要相互引用?从数据模式来看,每当您有注释时,您总是在进行获取时间线数据的操作,为什么还要对已经可用的数据进行额外的查询?我想根据时间线数据对注释进行分组