var UserSessionSchema = new Schema({
sessionActivity: { type: Date, expires: '15s', default: Date.now }, // Expire after 15 s
user_token: { type: String, required: true }
});
Indeks TTL menghapus dokumen 'x' detik setelah nilainya (yang seharusnya berupa Tanggal atau larik Tanggal) telah berlalu. TTL diperiksa setiap menit, jadi mungkin hidup sedikit lebih lama dari 15 detik yang Anda berikan.
Untuk memberikan tanggal nilai default, Anda dapat menggunakan default
pilihan di luwak. Ia menerima sebuah fungsi. Dalam hal ini, Date()
mengembalikan stempel waktu saat ini. Ini akan menyetel tanggal ke waktu saat ini sekali .
Anda juga dapat mengikuti rute ini:
UserSessionSchema.pre("save", function(next) {
this.sessionActivity = new Date();
next();
});
Ini akan memperbarui nilai setiap saat Anda memanggil .save()
(tetapi bukan .update()
).