1

我在 Mongo 中有一个模式,如下所示:

({
    title: String,
    genre: String,
    publishDate: Date,
    index:Number,
    requirementInformation:{
        requirementInformationStatus:{
            type: String,
            required: true
        },
        requirement: [{ requirementId: {
            type: Number
        },requirementState: {
            type: String
        }}]
    }
})

我想在 Node.js 中自动增加字段 requirementsId。我尝试使用 mongoose-auto-increment 包,但无法为嵌套对象创建自动增量。需要一些帮助。我的代码如下:

const mongoose = require('mongoose')
const Schema= mongoose.Schema;
var autoIncrement = require('mongoose-auto-increment');


 
 var connection = mongoose.createConnection("mongodb://localhost/Test");
 
 autoIncrement.initialize(connection);

    
var bookSchema = new Schema({
    title: String,
    genre: String,
    publishDate: Date,
    index:Number,
    requirementInformation:{
        requirementInformationStatus:{
            type: String,
            required: true
        },
        requirement: [{ requirementId: {
            type: Number
        },requirementState: {
            type: String
        }}]
    }
});
    
bookSchema.plugin(autoIncrement.plugin, {model:'Book',field: 'requirementInformation.requirement.requirementId'});
//authorSchema.plugin(autoIncrement.plugin, 'Author');

var Book = connection.model("Book", bookSchema);

const me = new Book({   
    title: 'MyBook',
    requirementInformation:{requirementInformationStatus:'True',requirement:[{requirementState:"hj"}]}
   
 })

 me.save().then(() => {
     console.log(me)
 }).catch((error) => { console.log(error) })

 

如何访问 requirementsId 字段?

4

0 回答 0