有没有办法更新序列并知道更新文档的主键?
table.filter({some:"value"}).update({something:"else"})
然后知道更新的记录的主键,而不需要第二次查询?
答案 0 :(得分:1)
目前无法使用{returnVals: true}
返回多个值,例如参见https://github.com/rethinkdb/rethinkdb/issues/1382
然而,有一种方法可以使用forEach
欺骗系统r.db('test').table('test').filter({some: "value"}).forEach(function(doc) {
return r.db('test').table('test').get(doc('id')).update({something: "else"}, {returnVals: true}).do(function(result) {
return {generated_keys: [result("new_val")]}
})
})("generated_keys")
虽然它有效,但它真的非常黑客。希望有数组限制,returnVals很快就可用于范围写入。