Bạn có thể dễ dàng đạt được điều này bằng cách sử dụng Bộ sưu tập có giới hạn trong mongodb.bạn có thể đặt giới hạn về số lượng tài liệu, vì vậy trong trường hợp của bạn, bạn có thể đặt số lượng tài liệu tối đa là 1 như sau:
db.createCollection("numbers", { capped : true, size:4000, max : 1 } )
Ngoài ra, nếu bạn muốn đặt bộ sưu tập của mình là giới hạn từ giản đồ mongoose, bạn có thể thực hiện việc đó bằng cách sử dụng tùy chọn giới hạn như sau:
var numbersSchema = new mongoose.Schema({
seconds: Number
},{ capped : true, size:4000, max : 1 })
Bộ sưu tập này sẽ luôn chỉ chứa một tài liệu có thể được cập nhật. Lưu ý rằng các tài liệu sau khi được chèn trong bộ sưu tập có giới hạn không thể bị xóa . Vì vậy, điều này cũng giải quyết được vấn đề xóa của bạn.
Ngoài ra, kích thướcsize
tùy chọn mà bạn cần chỉ định, có thể là bất kỳ giá trị số nguyên dương nào, sẽ được chuyển đổi nội bộ bởi mongo
đến tối thiểu 4096 bytes
hoặc bội số gần nhất của 256. QUAN TRỌNG:
Nguồn: tài liệu MONGODB
Ngoài ra, nếu bạn muốn đặt giá trị tối thiểu hoặc tối đa thành giây, bạn luôn có thể sử dụng mongoose min- tối đa xác nhận. Vì vậy, lược đồ sau sẽ phù hợp với bạn.var numbersSchema = new mongoose.Schema({
seconds: { type: Number, min: 60 }
},{ capped : true, size:4000, max : 1 })