This operation is not supported by Mongodb driver. Nestjs typeorm 某些方法出错

TypeORM是目前在Nodejs中使用率比较广的一个库(数据来自github),我喜欢使用它与mongodb配合。

标题中的提示报错是由于我使用TypeORM尝试软删除操作,在service里使用softDelete进行软删除,直接提示我不支持该方法,看了下源码,里面也确实提供了这个方法,但不能正确给deletedAt字段加内容,故而自己想办法绕路。

async deleteOne(_id: string): Promise<void> {
const article = await this.articleModel.findOne(_id);
article.deletedAt = new Date();
await this.articleModel.save(article);
}

可以见得,我是先找,再改,再存。虽然绕了点,不过确实有效,还有就是在find的时候记得都要加上deletedAt == null,推荐你写个公共类来做查询。

我用的typeorm版本:”@nestjs/typeorm”: “^8.0.1”

本文系作者 @ 原创发布在 。未经许可,禁止转载。

Like()
feacx
站长
29 Posts
0 Comments
29 Likes
Top