RethinkDb 将对象中的数组与对象连接起来

RethinkDb Join array in object with objects

我在 JS 中使用 rethinkdb。

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

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

允许用户查看他自己和他朋友的所有项目。 现在我想获取允许用户查看的所有项目。

但我现在不知道该怎么做。加入还是合并? 还是我的数据结构有问题?

此致。

你可以得到所有拥有 getAll and then map 个物品的朋友:

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