, : https://github.com/rethinkdb/rethinkdb/issues/209, Runtime , . :
r.do(r.db('test').table('log').get('3333'), function(x) {
return r.branch(
x.eq(null),
r.db('test').table('log').insert({id: '3333', log: 'looool', c: 1}),
r.db('test').table('log').get('3333').update(function(l) { return {c: l('c').add(1)}; })
)
});
, , , , .
EDIT: 1.11.1 1.11.3, . :
r.db('test').table('log').get('3333').replace(function(x) {
return r.branch(
x.eq(null),
{id: '3333', log: 'haiii', c: 1},
x.merge({c: x('c').add(1)})
)
})