私はこの苛立たしい状況に遭遇し、Mongooseのウェブサイトからの文書化された解決策に少し驚いていました。
したがって、これが意味するのは、ネストされた配列/オブジェクトのプロパティ(この場合はItem)を保存することであり、変更を明示的に指定する必要があります.markModified('Item')
var objectToSave = new ModelToSave({
_id : req.params.id,
Item : customObject
});
objectToSave.markModified('Item');
objectToSave.save();
スキーマレスタイプであるため、値を任意の他の値に変更できますが、Mongooseはそれらの変更を自動検出して保存する機能を失います。混合型の値が変更されたことをMongooseに「伝える」には、変更したばかりの混合型にパスを渡すドキュメントの.markModified(path)メソッドを呼び出します。
--http://mongoosejs.com/docs/schematypes.html#mixed