📜  将对象添加到数组 mongosse - Javascript (1)

📅  最后修改于: 2023-12-03 15:25:18.333000             🧑  作者: Mango

将对象添加到数组 Mongoose - Javascript

在Mongoose中,我们可以使用push()方法将一个新的对象添加到数组中。以下是添加一个新的学生到班级列表中的代码示例。

const mongoose = require('mongoose');

const studentSchema = new mongoose.Schema({
   name: {
      type: String,
      required: true
   },
   age: Number,
   grade: String
});

const classSchema = new mongoose.Schema({
   name: {
      type: String,
      required: true
   },
   students: [studentSchema]
});

const Class = mongoose.model('Class', classSchema);
const Student = mongoose.model('Student', studentSchema);

// 创建一个新的学生对象
const newStudent = new Student({
    name: "张三",
    age: 18,
    grade: "大二"
});

// 通过ID获取班级实例
const classId = "5f063e686d00ee38d8b5a230";
const classInstance = await Class.findById(classId);

// 将新的学生添加到学生数组中
classInstance.students.push(newStudent);

// 保存班级实例(包括新的学生)
await classInstance.save();

在上面的代码中,我们首先定义了两个模型:StudentClass。然后我们创建了一个新的学生对象,并使用findById()方法获取了班级实例。最后,我们使用push()方法将新的学生对象添加到班级实例的学生数组中,并保存该实例以将更改提交到数据库。