附加到 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)}});
我的数据结构如下:
{
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)}});