0
我有一個用戶模式中存在記錄更新單個屬性看起來是這樣的:貓鼬,如果數組
var userSchema = mongoose.Schema({
...
ask_history: [
{
user_question_body: {
type: String
},
favorite: {
type: Boolean,
default: false
},
ask_time: {
type: Date,
default: Date.now
}
}
]
})
而且我現在的更新方法是這樣的:
User.findOneAndUpdate({
"_id": user_id,
ask_history.user_question_body: {
$ne: "an input string"
}
}, {
"$addToSet": {
ask_history: {
user_question_body: "an input string"
}
}
}, function(err, doc) {
if (err)
throw err; // handle error;
}
);
如何添加一個功能,例如,如果我準備好了具有{user_question_body:「輸入字符串」}的ask_history數組中的記錄,則將{ask_time}更新爲當前更新時間。
這僅更新新的日期到具有「ask_history.user_question_body」已有記載:「輸入字符串」,但它不如果沒有人創建記錄? –
請用'{new:true}'.E.g:'{new:true,upsert:true}'添加''upsert'「選項。 –