【发布时间】:2021-07-14 14:14:56
【问题描述】:
我在为 mongodb 使用 typegoose 实现 TTL 时遇到问题。 基本上我想从集合中删除超过 30 秒的文档。
@ObjectType("TokenResetPasswordType")
@InputType("TokenResetPasswordInput")
@index(
{ createdAt: -1, confirmed: 1 },
{ expireAfterSeconds: 30, partialFilterExpression: { confirmed: false } }
)
export class TokenResetPassword {
@Field()
@Property({ lowercase: true, required: true, unique: true })
email: string;
@Field(() => [User], { nullable: true })
@Property({ ref: "User", default: "" })
user?: Ref<User>;
@prop({ default: Date.now, index: true })
createdAt?: Date;
}
【问题讨论】:
-
请分享更多代码。我们现在对您的问题无能为力。
-
检查存储在 MongoDB 中的实际索引。如果代码运行时集合和索引已经存在,mongoose 将不删除并重新创建索引。
标签: node.js mongodb typescript typegoose