RethinkDB更新和替换 - 不在一行中

时间:2016-04-12 15:26:55

标签: rethinkdb rethinkdb-javascript

有人可以考虑在一行中使用updatereplace的优雅方式吗?

我想使用r.row.without删除字段并在同一查询中更新。

类似的东西:

r.db('db').table('table').get('item_id')
          .update({ field_a:'value_a'})
          .replace(r.row.without(r.args(['field_b'])))`

简单地链接会很好但是不会工作(更新会返回更改结果)。

2 个答案:

答案 0 :(得分:3)

您也可以编写.update({field_a: 'value_a', field_b: r.literal()})来更改一个字段并同时删除另一个字段。

答案 1 :(得分:2)

r.db('db').table('table').get('item_id')
    .replace(
        r.row.merge(
            function(doc){ 
                return {field_a: 'newval'}
            }
        ).without('field_b')
    )

应该做的伎俩