В документации Mongoose по следующему адресу: http://mongoosejs.com/docs/embedded-documents.htmlMongoose встроенных документов/DocumentsArrays ID
Существует утверждение:
DocumentArrays имеет специальный идентификатор метода, который фильтрует ваши встроенные документов по их _id (каждый внедренный документ получает один):
Рассмотрите следующий фрагмент:
post.comments.id(my_id).remove();
post.save(function (err) {
// embedded comment with id `my_id` removed!
});
Я посмотрел на данные, и нет _ID s для вложенных документов, казалось бы, подтверждают это сообщение:
How to return the last push() embedded document
Мой вопрос:
Соответствует ли документация? Если да, то как мне узнать, что такое «my_id» (в примере), чтобы сделать в первую очередь '.id (my_id)'?
Если документация неверна, безопасно использовать индекс как идентификатор в массиве документов или я должен создать уникальный идентификатор вручную (согласно указанному сообщению).
Спасибо - так что я ясно: ты говоришь, что _id является свойство реализованным «комментарий» (встроенный документ), но не обязательно «поле» в базе данных? В моих данных у меня нет полей _id для встроенных документов только для моделей. – Lewis
Это сработало, спасибо! – Lewis
Но разве это не сделало бы их обособленными экземплярами? Если вы обновите модель комментариев, отразится ли она на изменении модели блога? – Neikos