gpt4 book ai didi

node.js - 更新时sequelize的返回值是多少?

转载 作者:行者123 更新时间:2023-12-03 22:33:24 26 4
gpt4 key购买 nike

我在 expressjs 中使用 Sequence 编写 API。但是我在更新时遇到了返回值的问题!
我按照互联网上的教程进行操作,但在 num=[1] 时出现错误不是 num=1虽然更新成功!

exports.update = (req, res) => {
const { id } = req.params;

Post.update(req.body, {
where: { id }
})
.then((num) => {
if (num === 1) {
res.send({
message: 'Post was updated successfully.'
});
}
else {
res.send({
message: `Cannot update Post with id=${id}. Maybe Post was not found or req.body is empty!`
});
}
})
.catch((err) => {
res.status(500).send({
message: `Error updating Post with id=${id}`
});
});
};
那么,调用 update 方法后的返回值是什么?我该如何解决?谢谢。

最佳答案

The sequelize document of update
公共(public)静态异步更新(值:对象,选项:对象):Promise >
promise <数组<数字,数字>>
promise 返回一个包含一个或两个元素的数组。第一个元素始终是受影响的行数,而第二个元素是实际受影响的行(仅在带有 options.returning true 的 postgres 中支持)。
所以,它不会只返回数字。您需要遵循文档。
解决

.then((nums) => {
const num = nums[0]
.....

关于node.js - 更新时sequelize的返回值是多少?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/64691243/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com