📅  最后修改于: 2023-12-03 15:25:18.333000             🧑  作者: Mango
在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();
在上面的代码中,我们首先定义了两个模型:Student
和Class
。然后我们创建了一个新的学生对象,并使用findById()
方法获取了班级实例。最后,我们使用push()
方法将新的学生对象添加到班级实例的学生数组中,并保存该实例以将更改提交到数据库。