Javascript 使用节点在rethindb中插入错误
我是新来的。 当我在中尝试示例代码时 } 我得到了以下错误: 500内部服务器错误 {“error”:“return\u vals重命名为return\u changes in:\nr.table(\“todos\”)。insert({title:r.json(\“\”abcde\“\”),completed:r.json(\“false\”),createdAt:r.now(),{returnVals:true})\n 然后我在中试用了示例代码 } 我得到了以下错误: 500内部服务器错误 {“error”:“无法识别的可选参数Javascript 使用节点在rethindb中插入错误,javascript,node.js,rethinkdb,Javascript,Node.js,Rethinkdb,我是新来的。 当我在中尝试示例代码时 } 我得到了以下错误: 500内部服务器错误 {“error”:“return\u vals重命名为return\u changes in:\nr.table(\“todos\”)。insert({title:r.json(\“\”abcde\“\”),completed:r.json(\“false\”),createdAt:r.now(),{returnVals:true})\n 然后我在中试用了示例代码 } 我得到了以下错误: 500内部服务器错误 {
returnChanges
。在:\nr.table(\“todos\”)中插入({title:r.json(\“\”abcde\“\”),完成:r.json(\“false\”),createdAt:r.now(),{returnChanges:true})\n”}
似乎REJECTDB已将REJECTVAL更改为return\U更改,并且insert()的参数已更改
当我使用return\u changes时,我已经解决了这个问题
在最新版本中使用insert的正确方法是什么?
数据库是否总是更改其语法?这确实是示例代码中的一个错误。我打开了它,以便我们可以修复它 无法识别
returnChanges
的第二个问题可能来自使用旧的数据库节点驱动程序。是否尝试更新驱动程序
function create(req, res, next) {
var todo = req.body;
todo.createdAt = r.now(); // Set the field `createdAt` to the current time
r.table('todos').insert(todo, {returnVals: true}).run(req._rdbConn, function(error, result) {
if (error) {
handleError(res, error)
}
else if (result.inserted !== 1) {
handleError(res, new Error("Document was not inserted."))
}
else {
res.send(JSON.stringify(result.new_val));
}
next();
});
function create(req, res, next) {
var todo = req.body; // req.body was created by `bodyParser`
todo.createdAt = r.now(); // Set the field `createdAt` to the current time
r.table('todos').insert(todo, {returnChanges: true}).run(req._rdbConn, function(error, result) {
if (error) {
handleError(res, error)
}
else if (result.inserted !== 1) {
handleError(res, new Error("Document was not inserted."))
}
else {
res.send(JSON.stringify(result.changes[0].new_val));
}
next();
});