项目.updateOne({标题:请求参数标题},{标题:请求正文标题,内容:请求正文内容},{覆盖:真},函数(错误){}).{覆盖:真}的用法是什么?我只想知道同样的效用是什么
pdtvr36n1#
updateOne()方法中的{overwrite: true}选项指定更新操作应该用更新后的文档替换现有文档。换句话说,更新操作将用新文档覆盖现有文档,而不是更新现有文档中的特定字段。当您要用新文档完全替换现有文档,而不仅仅是更新现有文档中的某些字段时,此选项非常有用。带{overwrite: true}选项的updateOne()方法的完整语法:
updateOne()
{overwrite: true}
Article.updateOne( { title: req.params.articleTitle }, { title: req.body.title, content: req.body.content }, { overwrite: true }, function(err) { /* Perform any necessary actions here */ } );
qjp7pelc2#
如果我们有这篇文章Article { title, content, image }覆盖将用更新对象替换文档:
Article { title, content, image }
Article.updateOne({ title }, { title: newTitle, content: newContent }, { overwrite: true }) // Will remove image: Article { newTitle, newContent }
如果不覆盖,将仅修改更新对象中的属性
Article.updateOne({ title }, { title, content }) // Will not remove image: Article { newTitle, newContent, image }
2条答案
按热度按时间pdtvr36n1#
updateOne()
方法中的{overwrite: true}
选项指定更新操作应该用更新后的文档替换现有文档。换句话说,更新操作将用新文档覆盖现有文档,而不是更新现有文档中的特定字段。当您要用新文档完全替换现有文档,而不仅仅是更新现有文档中的某些字段时,此选项非常有用。
带
{overwrite: true}
选项的updateOne()
方法的完整语法:qjp7pelc2#
如果我们有这篇文章
Article { title, content, image }
覆盖将用更新对象替换文档:
如果不覆盖,将仅修改更新对象中的属性