我正在创建一个包含更新过去帖子的应用。有一个单独的页面,以及与之相关的路线。
app.post("/posts/:id/update", function(req, res){
Post.findAll({
where: {
id: req.params.id
}
}).then(function(foundPost){
var updatePost = foundPost[0]
updatePost.updateAttributes({
description: req.params.description,
author: req.params.author,
image: req.params.image
})
});
res.redirect("/posts")
});
此代码将在数据库中找到帖子,然后尝试使用从更新页面上的表单接收的数据进行更新。出于某种原因,除了" updatedAt"之外,帖子根本没有更新。数据库中的日期。这是在尝试更新帖子后从终端发出的信息:
Executing (default): UPDATE `posts` SET `updatedAt`='2017-07-07 20:50:22' WHERE `id` = 4
它找到了正确的帖子但对此没有任何作用。
答案 0 :(得分:0)
您可以使用模型中提供的更新方法 像
这样的东西Posts.update({
image: req.body.image,
title: req.body.title,
// More properties to update
}, {where:{id:req.params.id}})