1
我用貓鼬在對象數組中插入一個對象。 我的目標是這樣的:用貓鼬在對象數組中插入一個唯一對象
name: {
type: String,
unique: true,
required: true
},
translations: [{
tag: {
type: String,
unique: true,
required: true
},
meaning: {
type: String,
required: true
}
}]
我想我的代碼時,已經有在「翻譯」用相同的「標籤」值的對象拋出一個錯誤。
目前,我正在做這個:
Language.update(
{name: languageName},
{$addToSet: { 'translations': {
tag: aNewTag,
meaning: aNewTranslation
}}}, {
upsert: false
}, function(err) {
if (err) console.log(err);
else console.log('This is spartaaa!!!');
}
);
我不認爲這是可能的在MongoDb中的一個操作。您必須先檢查文檔,然後更新或拋出異常。 –
它認爲你錯過了$ addToSet的含義。關鍵是它會**保持獨特。你傳入的任何值都已經存在,不會更新數組/集合。如果你的物品已經不是唯一的,你沒有一套。 –