2017-02-14 36 views
2

所以我想這樣做:Mongodb - 你可以用javascript對象文字屬性值速記更新兩個值嗎?

DB.update(_id, {$set: {myUpdate, updated: new Date()}}); 

但由於預期其無法正常工作。當我運行它時,我實際上會得到一個名爲「myUpdate」的新字段。如果我運行這個版本的代碼:

DB.update(_id, {$set: myUpdate}); 

它開始正常工作。 myUpdate中的所有鍵和值將應用於文檔。但同時我也想更新'更新'的值。

有沒有辦法可以結合這兩個查詢?

DB.update(_id, {$set: myUpdate}); 
DB.update(_id, {$set: {updated: new Date()}}); 

編輯:

我的繼承人myUpdate對象。我正在使用它,所以更新我需要的字段更方便。

let myUpdate= {}; 
if (args.shortName) { 
    myUpdate.shortName = args.shortName; 
} 
if (args.fullName) { 
    myUpdate.fullName = args.fullName; 
} 
+0

如何做你的我的更新是什麼樣子? –

+0

let myUpdate = {};如果(args.shortName){ myUpdate.shortName = args.shortName;如果(args.fullName){ } myUpdate.fullName = args.fullName; } – pizzae

回答

2

你可以簡單地添加更新到您的myUpdate對象,然後執行更新查詢,如下所示:

myUpdate.updated = new Date(); 
DB.update(_id, {$set: myUpdate}); 
+0

哇,爲什麼我沒想到 – pizzae

相關問題