Karena beberapa dokumen dibuat saat timestamps
opsi disetel ke false (ini adalah nilai default) luwak tidak akan mengetahui cap waktu tersebut. Oleh karena itu, item._id.getTimestamp()
akan kembali tidak terdefinisi.
Yang dapat Anda lakukan adalah membuat ulang entri di mana createdAt
tidak ada. Mongoose kemudian akan secara otomatis membuat stempel waktu dan menyetelnya ke stempel waktu saat ini, jika opsi ini diaktifkan:
const profilesWithoutCreated = await Profile.find({createdAt: {$exists: false}}).exec();
const timeStampExtract = [];
let newProfile;
for (const profile of profiles) {
newProfile = new Profile(profile);
newProfile.createdAt = profile._id.getTimestamp();
const savedProfile = await newProfile.save();
timeStampExtract.push(savedProfile._id.getTimestamp());
}