Trong Mongoose, bạn tạo chỉ mục TTL vào Date
qua trường expires
thuộc tính trong định nghĩa giản đồ của trường đó:
// expire docs 3600 seconds after createdAt
new Schema({ createdAt: { type: Date, expires: 3600 }});
Lưu ý rằng:
- Tác vụ hết hạn dữ liệu của MongoDB chạy mỗi phút một lần, vì vậy, tài liệu hết hạn có thể tồn tại đến một phút sau khi hết hạn.
- Tính năng này yêu cầu MongoDB 2.2 trở lên.
- Việc đặt
createdAt
là tùy thuộc vào bạn vào thời điểm hiện tại khi tạo tài liệu hoặc thêmdefault
để làm điều đó cho bạn như được đề xuất ở đây.-
{ createdAt: { type: Date, expires: 3600, default: Date.now }}
-