【问题标题】:Sequelize not finding variablesSequelize 找不到变量
【发布时间】:2020-05-31 20:56:20
【问题描述】:

我完全不知道自己做错了什么。我正在尝试使用 Sequelize/mySQL 执行简单的 UPDATE 功能,但我的命令无法按预期工作。这是命令:

         await dataArr.map((e) => {
            Users.update(
                { account_status: -1 },
                {
                    returning: true,
                    where: { user_id: e.customer_id }
                }
            ).then((res) => {
                console.log(res);
                return res;
            });
        });

当命令被执行时,查询看起来像:

Executing (default): UPDATE `users` SET `account_status`=? WHERE `user_id` = ?

如您所见,查询缺少来自account_status 的固定值和变量e.customer_id,因为我可以console.log 它肯定会被传递。这一定是我想念的非常简单的事情,但我还没有找到有类似问题的人。

【问题讨论】:

  • 您可以使用 foreach 代替 map,因为您必须为 map 循环返回 somthing 并从循环中删除 await,因为它没用。

标签: javascript node.js sequelize.js


【解决方案1】:

我认为您的错误在 {} 中。另外,您确定要传递 customer_id 吗?尝试这样的事情。确保将“e”传递给函数。

updateStatus: function(req, res, e) {

    Users
        .update(account_status: -1,
                    {
                        where: { user_id: e.customer_id }
                    }
                )
        .then..........
}

请澄清“e”是什么,以及它来自哪里。也许发布更多代码,上面的行。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-07-18
    • 1970-01-01
    • 2019-11-22
    • 2016-04-30
    • 2020-07-06
    • 2021-03-25
    相关资源
    最近更新 更多