我有一个带有“已删除”列的非常简单的模型 (1/0)
module.exports = (sequelize, DataTypes) => {
const User = sequelize.define('User', {
name: {
type: DataTypes.STRING,
allowNull: false,
required: true
},
deleted: {
type: DataTypes.NUMBER,
allowNull: false,
required: true,
defaultValue: 0,
},
});
return User;
}
在我的路由器中,我列出了所有用户
router.get('/users', (req, res) => {
return models.User.findAll({where: {deleted: 0})
.then(users => res.status(200).json(users))
});
有没有办法将 deleted = 0 定义为模型本身的一部分,这样我就不必在每次需要列出用户时都传递它?谢谢你!
最佳答案
您需要在模型中设置 paranoid:true
。
const User = sequelize.define('User', {
name: {
type: DataTypes.STRING,
allowNull: false,
required: true
},
deleted: {
type: DataTypes.NUMBER,
allowNull: false,
required: true,
defaultValue: 0,
},
},{
paranoid: true
});
关于node.js - 如何使用 sequelize 软删除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58965810/