附加到 rethinkdb 中的嵌套数组

append to nested array in rethinkdb

我的数据结构如下:

{
    id: blah-blah-blah, 
    settings: { 
                stuff: {},
                other_stuff: {},
                provided: []
    },
    ....
}

我需要使用动态生成的键 and/or 值更新各种项目。更新嵌套对象很容易。例如,更新 settings.stuff 中的一些键,我可以创建一个更新对象,如下所示:

update_object = r.object('settings', r.object('stuff', r.object(key, value))) 

然后 运行

r.db(foo).table(bar).get(woot).update(update_object).run()

但是我无法将一些动态生成的值附加到嵌套数组。我收集到的是:

r.db(foo).table(bar).get(woot).update(function(document) {
   return {"settings": document("settings")....append(value)

但我不知道如何填写最后一行的空白。

好的,我明白了:

r.db(foo).table(bar).get(woot)
    .update({'settings': {'provided': r.row('settings')('provided').append(value)}});