Добавление данных в массив Mongo через Express.JS Router - PullRequest
0 голосов
/ 09 мая 2019

Я хочу добавить данные из параметров запроса в массив MongoDb. Моя схема выглядит так

var studentSchema = mongoose.Schema({
    first_name: {type: String},
    roll_num: {type: String},
    experiences: [{
        experienceTitle: String,
        Employer: String,
        fromYear: Number,
        toYear: Number
    }]
});

Пока я могу добавлять данные в first_name & roll_num через простой экспресс-маршрутизатор, который выглядит следующим образом

router.post('/createStudent',(req, res, next) => {
    var newStudent = new student({
        first_name: req.body.first_name,
        roll_num: req.body.roll_num,
    });
    newStudent.save((err, student) => {
        if(err){
            res.status(500).json({errmsg: err});
        }
        else{
            res.status(200).json({msg: student});
        }
    })
});

Я хочу добавить данные в массив experiences. Я написал несколько функций для достижения этой цели, но до сих пор мне удавалось создать ученика только с пустым массивом experiences.

1 Ответ

0 голосов
/ 09 мая 2019

Вы пробовали это:


//...

const student = new Student({
    first_name: "testFirstName",
    roll_num: "R0000",
    experiences: [{
        experienceName: "testExp1",
        experienceEmployer: "testEmpl",
        fromYear: 1994,
        toYear: 1995
    }, {
        experienceName: "testExp2",
        experienceEmployer: "testEmp3",
        fromYear: 1996,
        toYear: 1997
    }]
});

await student.save();

//...

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...