填充子架构文档中的字段



我有一个数组形式的嵌套子模式,在这个子模式数组中,我引用了一个类型为Image的对象ID(参见图像模式(。我想要的是用图像本身的数据填充这个对象 ID。以恢复想要在子架构文档中填充字段。我尝试了许多解决方案,但没有成功,知道如何实现吗?谢谢

我有 3 个架构,如下所示:

const deviceSchema = mongoose.Schema({
    _id: mongoose.Schema.Types.ObjectId,
    name: {
        type: String,
        required: true,
    },
    os: {
        type: String,
        required: true,
    },
   },
    images:[assignedImagesSchema]
});
const  assignedImagesSchema = new mongoose.Schema({ 
    id: {type: mongoose.Schema.Types.ObjectId, ref:"Image"},
    isVisible: {
        type: Boolean,
        default: true
    },
    visibleFor: {
        type: Number,
        default: 0
    },
    orderIndex: {
        type: Number,
    }
  });
const imageSchema = mongoose.Schema({
    _id: mongoose.Schema.Types.ObjectId,
    url:{
        type: String,
        required: true,
    },
    orientation: {
        type: String,
        required: true,
    },
    devices: [{type: mongoose.Schema.Types.ObjectId, ref:'Device' }]

您可以在 assignedImageSchema 中添加一个新字段,该字段将 imageSchema 作为对象。例如:

const assignedImagesSchema = 
new mongoose.Schema({ 
image: { type: imageSchema } , 
isVisible: { type: Boolean, default: true },
visibleFor: { type: Number, default: 0 },
orderIndex: { type: Number, } });

最新更新