我正在嘗試使用貓鼬中的$ set更新文檔,但只希望在文檔存在的情況下使用set。否則,我希望它創建一個新文檔。問題是我需要添加整個文檔,而不僅僅是$集中提到的字段。這可能在一個查詢與貓鼬?
0
A
回答
0
您可以upsert:true
選項使用findOneAndUpdate
做到這一點:
MyModel.findOneAndUpdate(query, {$set: {.....}}, { upsert:true }, function(err, doc){
if (err){
return res.send(500, { error: err })
};
return res.send("succesfully saved");
});
+0
不要認爲這有幫助,因爲如果文檔不存在,我需要插入整個文檔。在這種情況下,它會使用置入$ set – stu6188
+0
中的值進行插入,但可以將'complete_set'傳遞給完整的對象。 – giankotarola
相關問題
- 1. 更新,如果存在插入,如果它不存在子文檔在貓鼬
- 2. 貓鼬 - 插入子文檔
- 3. 用貓鼬更新文檔(更新文檔屬性的屬性)
- 4. 使用嵌入文檔中貓鼬
- 5. 如何動態更新嵌套的文檔$ set在貓鼬
- 6. 貓鼬不更新嵌入式文檔
- 7. SQL:如果存在,更新else插入
- 8. 嵌入式文檔的貓鼬更新
- 9. 在使用貓鼬插入子文檔時遇到困難
- 10. 如何使用貓鼬更新節點中的內部文檔
- 11. 貓鼬 - 保存文檔Object.assign
- 12. 貓鼬不保存文檔
- 13. 貓鼬更新所有文檔
- 14. 使用貓鼬在mongoDB集合中保存單個文檔
- 15. 如何保存/更新貓鼬中的多個文檔
- 16. 獲取新嵌入文檔與貓鼬
- 17. 貓鼬不能保存嵌入文檔
- 18. 貓鼬:文檔沒有更新
- 19. 貓鼬無法更新我的文檔
- 20. 使用DocumentID更新整個MongoDB文檔
- 21. 使用貓鼬將大量文檔導入到文本文件
- 22. 帶保存的貓鼬更新子文檔不起作用
- 23. 貓鼬更新嵌入文檔不起作用
- 24. 當調用document.save()時,貓鼬是如何決定「插入」或「更新」文檔的?
- 25. 如何使用貓鼬中的「保存」功能更新子文檔?
- 26. 如何保存之前更改使用前將文檔保存在貓鼬
- 27. 貓鼬只更新文檔值,如果其定義
- 28. 貓鼬不返回完整文檔
- 29. 檢查使用貓鼬是否存在於mongodb中的文檔
- 30. 貓鼬:我如何更新/保存文檔?
代碼示例: bulk.find({_ ID:ID})。更新({$設置是:{title: '富巴'}} ).upsert(newDoc)??? – stu6188