在RethinkDB中监听复杂查询的更改提要

时间:2016-08-23 18:37:23

标签: javascript node.js rethinkdb rethinkdb-javascript

当我有这样的查询时:

r.db('universe')
  .table('Star')
  .getAll(
    r.db('universe').table('Ship').get(idShip)('idCurrentGalaxy'),
    {index: 'idGalaxy'}
  )
  .changes({includeInitial: true})

我希望它能在

时更新更改源
  1. 选定的星星会更新
  2. 所选的ship.idCurrentGalaxy更改
  3. 使用此查询时,只有 1。为真。如果可能,我该如何更改此查询以使 2。也为真?

      

    查询背后的数据可能是这样的:

    //stars
    {id: 1, idGalaxy: 1, name: 'Aldhafera'}
    {id: 2, idGalaxy: 1, name: 'Duhr'}
    {id: 3, idGalaxy: 2, name: 'Menchib'}
    
    //galaxies
    {id: 1, name: 'Milky Way'}
    {id: 2, name: 'Andromeda'}
    
    //ships
    {id: 1, idCurrentGalaxy: 1}
    
      

    并且上面的查询会导致:

    {id: 1, idGalaxy: 1, name: 'Aldhafera'}
    {id: 2, idGalaxy: 1, name: 'Duhr'}
    

1 个答案:

答案 0 :(得分:0)

目前无法在RethinkDB中获得该功能;你必须打开两个更换饲料并自己将它们拼接在一起。最终将增加对此的支持;您可以在https://github.com/rethinkdb/rethinkdb/issues/3997跟踪进度。