Node.js Mongoose TTL不处理时间戳
我在获取mongoose时间戳和mongoose expires工作时遇到问题。我在updatedAt上没有看到MongoDB TTL索引 模式:Node.js Mongoose TTL不处理时间戳,node.js,mongodb,mongoose,mongoose-schema,Node.js,Mongodb,Mongoose,Mongoose Schema,我在获取mongoose时间戳和mongoose expires工作时遇到问题。我在updatedAt上没有看到MongoDB TTL索引 模式: const AdminSessionSchema = mongoose.Schema({ UID: String, device: String, updatedAt : { type: Date, expires: 60 } }, { collection: 'admin.session', timestamps: true });
const AdminSessionSchema = mongoose.Schema({
UID: String,
device: String,
updatedAt : { type: Date, expires: 60 }
}, { collection: 'admin.session', timestamps: true });
蒙哥希尔:
> db.admin.session.getIndexes()
[
{
"v" : 1,
"key" : {
"_id" : 1
},
"name" : "_id_",
"ns" : "development.admin.session"
}
]
这样做对吗?或者我遗漏了什么。您是否使用db.collection.createIndex创建了索引?您应该为字段创建索引,以使TTL正常工作。@Jocket mongoose expire在没有db.collection.createIndex的情况下正常工作,以前没有时间戳:true,因为mongoose为我创建了索引。是否使用ensureIndex进行了检查。。