По сути, я пытаюсь сделать что-то вроде FindByIdAndCreate
, метода, которого нет в мангусте.
У меня есть такая схема:
const WordSchema = new Schema ({
TargetWord: String,
Translation: String,
ExampleSentences: [{
Number: Number, //increment somehow each time
Sentence: String,
}],
});
У меня есть форма, в которой пользователь может добавить примеры предложений этого целевого слова, маршрут для которого выглядит следующим образом:
router.put("/word/:id/add", async(req, res) => {
//get the new sentence from the field
var NewSentence = req.body.Sentence;
Теперь, когда я сохраню это новое предложение в переменной NewSentence
, я хочу создать новый объект в массиве WordSchema.ExampleSentences
, который будет содержать новые предложения и число, которое должно автоматически увеличиваться.
Я возился с FindByIdAndUpdate
безрезультатно, этот синтаксис не работает, потому что он выдает ошибку при использовании .
WordSchema.findByIdAndUpdate(req.params.id, {ExampleSentences.Sentence: NewSentence}, ...