首页 > 解决方案 > User.destroy 不是函数

问题描述

我使用oracle-sage库。而当我想删除一条记录时,就会发生错误。

{
    "success": false,
    "message": "User.destroy is not a function"
} 

如何解决这个问题?

const User = require('../models/User')
const errorHandler = require('../utils/errorHandler')

module.exports.remove = async function (req, res) {
    try {
        await User.destroy({
            USER_ID: req.params.USER_ID
        })
        res.status(200).json({
            message: 'User deleted.'
        })
    } catch (e) {
        errorHandler(res, e)
    }
}

标签: node.jsexpress

解决方案


可能 .destroy 不是静态方法,需要实例化对象。您可以尝试先获取用户对象,然后再销毁它。

try {
    let user = await User.findOne({ USER_ID: req.params.USER_ID});

    user.destroy().then(function(){

        res.status(200).json({
            message: 'User deleted.'
        })

    });

} catch (e) {
    errorHandler(res, e)
}

推荐阅读