RethinkDb使用对象连接对象中的数组

时间:2016-11-05 11:31:48

标签: rethinkdb rethinkdb-javascript reql

我正在使用rethinkdb和JS。

我有一个rethinkdb表'users'。一个用户对象如下所示:

{
  id: '1',
  friends: [
    '2',
    '4'
  ],
  items: [
    {
      id: '1',
      name: 'test item 1'
    }
  ]
}

允许用户查看他和他的朋友的所有项目。 现在我希望获得用户可以看到的所有项目。

但我现在不知道如何做到这一点。通过加入或合并? 或者我的数据结构错了吗?

最好的问候。

1 个答案:

答案 0 :(得分:0)

您可以使用getAllmap项目获取所有朋友:

r.db("YourDataBase").table("YoorTable")
    .getAll(r.args(r.db("YourDataBase").table("YoorTable").get("a1")("friends")))
    .map(function(val){
      return val("items");
    })