我正在使用updateItem方法保存新记录。 以下是代码示例:
var vv = new vvmodel.model();
vvmodel.updateItem(vv, obj, function (error) {
if(error)
console.log('error :: ', error);
});
这不会发送任何可以插入id记录的对象。我们如何获取插入的记录ID?
谢谢
答案 0 :(得分:0)
您应该在keystoneJs中使用update handler
一旦updateHandler.process
运行无误,您可以访问.id
上的vv
字段
var vv = new vvmodel.model({
// .... initial fields
}),
var updater = vv.getUpdateHandler(req, res, {
errorMessage: 'There was an error creating your new model:'
});
updater.process(req.body, {
flashErrors: true,
logErrors: true,
fields: 'field1, field2, field3'
}, function(err) {
if (err) {
locals.validationErrors = err.errors;
} else {
req.flash('success', 'Your model has been added');
return res.redirect('/vv/detail/' + vv.id); // here you can access the id if request was successful.
}
next();
});
查看与sydjs site source一起使用的更详细的示例