我需要遍历主表并将新文档添加到不同的表中,每个表都包含与主表中的文档匹配的id:
和name:
条目。
我已经阅读了relevant documentation,这是非常稀疏的,我发现this SO post关于迭代同一个表内的对象属性,但这不适用,因为我想迭代对象上的对象table,而不是对象中的属性,并将结果应用于NEW表(而不是同一个表)。
我可以遍历表的长度并创建与新表中某些字段匹配的文档吗?
更具体地说:我的数据库primary_table
中的文档包含字段id:
和name.
如何将这些ID和相应的名称迁移到使用一个或更详细payment_history
的表格中forEach
,toArray
和next
?
我的尝试:
r.db('client').table('basic_info').forEach(
function(id){
return r.db('client')table('payment_history').insert(
{
id: r.db('client').table('basic_info').get(id).getField('id'),
name: r.db('client').table('basic_info').get(id).getField('name')
}
);
}
);
提前致谢
答案 0 :(得分:1)
您可以像这样写forEach
:
r.db('client').table('basic_info').forEach(function(row) {
return r.db('client').table('payment_history').insert(
{id: row('id'), name: row('name')});})
但是这样写它可能会更好:
r.db('client').table('payment_history').insert(
r.db('client').table('basic_info').pluck('id', 'name'))