使用数组条目更新列;如果列不存在则创建列

时间:2016-06-24 19:37:17

标签: rethinkdb rethinkdb-javascript

                            r.table("bets").filter({id: betID}).update({
                                votes: r.row('votes').append({
                                    userID: userID,
                                    vote: vote
                                })
                            }).run(connection, function(err, result) {
                                // ...
                            });

我的目标是使用给定的bets更新betID表格中的文档。我想更新可能不存在的列votes。如果它不存在,我想创建列,然后追加数组元素。如果它存在,我只想附加数组元素。 result.replaced返回1,这是正确的,但是没有创建列votes ...任何想法?

1 个答案:

答案 0 :(得分:1)

找到解决方案:

                            var newVote = {
                                userID: userID,
                                vote: vote
                            };

                            r.table("bets").filter({id: betID}).update({
                                votes: r.row('votes').default([]).append(newVote)
                            }).run(connection, function(err, result) {

                            });

请参阅。 https://rethinkdb.com/api/javascript/update/