Sequelize 查找软删除的行

Sequelize find soft deleted rows

我正在尝试从数据库中获取一些已软删除的行和一些未软删除的行,但这对我不起作用。

Model.findAll({
    'where': {
        cond: 'xxx'
    },
    include: [Model2],
    paranoid: false
}).then(function (rows) {
    // do something
}).catch(function (err) {
    // do something
});

我该怎么做?

您的查询应包含已软删除的 Model 实例,但不包含已软删除的 Model2 实例。

要获取软删除的 Model2 实例,您还需要 include:

中的 paranoid: false 选项
Model.findAll({
    'where': {
        cond: 'xxx'
    },
    include: [{
        model: Model2,
        paranoid: false
    }], 
    paranoid: false
}).then(function (rows) {
    // do something
}).catch(function (err) {
    // do something
});

这似乎不在文档中,但我试过了并且有效。