繁体   English   中英

用于文档的猫鼬条件TTL

[英]Mongoose conditional TTL for document

有什么方法可以仅根据当前文档状态为某些文档设置expiresAt索引吗?

就在这里。 您需要同时设置partialFilterExpressionexpiresAt索引。 仅适用于mongodb 3.2+

以下代码仅在payed属性等于false下,才会在24小时后删除文档:

let billingSchema = new mongoose.Schema({
_id:type:Number,
summ:{
    type:Number,
    required:true
},
description:String,
payed:{
    type:Boolean,
    default:false,
    index:true
},
ownerId:{
    type:mongoose.Schema.Types.ObjectId,
    ref:'User',
    index:true
}
},{timestamps: true,_id: false});
billingSchema.index({createdAt: 1},{expireAfterSeconds: 24*60*60,partialFilterExpression : {payed: false}});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM