当我使用书架将列设置为 null 并重定向到显示该数据的页面时,数据显示未更新的记录,直到我刷新。代码如下:
Table.where({id: req.param.id}).fetch()
.catch(function (err) {
console.log(err);
})
.then(function (results) {
results.set('other_column', null);
results.save();
results.refresh();
// Redirect to orders page
res.redirect('/landing-page');
});
着陆页查询如下:
Table.where({id: req.param.id}).fetch()
.catch(function (err) {
console.log(err);
})
.then(function (results) {
data.results = results.attributes;
res.render('display-page', data);
});
有谁知道我如何获取更新的记录,或者如果我更新记录不正确,请告诉我?任何解决此问题的帮助将不胜感激,因为我在用户刚刚更新旧数据后无法呈现具有旧数据的页面......
您正在编写像同步代码一样保存数据,因此 save() 可能(并且经常会)在刷新()之后发生。尝试将其更改为:
Table.where({id: req.param.id}).fetch()
.catch(function (err) {
console.log(err);
})
.then(function (results) {
return results
.set('other_column', null)
.save();
})
.then(function (results) { // results should now include the saved data
// Redirect to orders page
res.redirect('/landing-page');
});