Toho lze snadno dosáhnout pomocí Capped Collections v mongodb.můžete nastavit limit počtu dokumentů, takže ve vašem případě můžete nastavit maximální počet dokumentů na 1, jak je uvedeno níže:
db.createCollection("numbers", { capped : true, size:4000, max : 1 } )
Také pokud chcete nastavit svou sbírku jako omezenou ze schématu mongoose, můžete to provést pomocí možnosti omezená následovně:
var numbersSchema = new mongoose.Schema({
seconds: Number
},{ capped : true, size:4000, max : 1 })
Tato kolekce bude vždy obsahovat pouze jeden dokument, který lze aktualizovat. Upozorňujeme, že dokumenty po vložení do omezených sbírek nelze smazat . Takže to také řeší váš problém s mazáním.
Takésize
možnost, kterou musíte zadat, může být jakákoli kladná celočíselná hodnota, kterou interně převede mongo
na minimum 4096 bytes
nebo nejbližší násobek 256. DŮLEŽITÉ:
Zdroj:MONGODB docs
Také, pokud chcete nastavit minimální nebo maximální hodnotu na sekundy, můžete vždy použít mongoose min- max validace. Následující schéma by vám tedy mělo fungovat.var numbersSchema = new mongoose.Schema({
seconds: { type: Number, min: 60 }
},{ capped : true, size:4000, max : 1 })