rethinkdb - 嵌入式数组中的 ReQL 更新对象在监听更改时发出 "create"和 "delete"事件

标签 rethinkdb reql database nosql

我遇到了以下问题:假设我有以下结构:

{
    "id": 1,
    "data": {
       "arr": [{"text":"item1"}]
    }
}

以及以下查询:

r.db('test').table('test').get(1).update(function (item) {
    return {
        data: {
          arr: item('data')('arr').map(function (row) {
             return r.branch(
                  row('text').eq('item1'),
                  row.merge({updated:true}),
                  row
             )
          })
        }
    }
})

我只监听这个特定数组的变化,当项目更新时,创建和删除事件都会发出。我真的需要接收更新事件,例如old_val 不为空且 new_val 不为空。

先谢谢大家

最佳答案

毕竟,我决定放弃嵌入式数组并使用表连接,这样可以避免所有可能的黑客攻击。

关于rethinkdb - 嵌入式数组中的 ReQL 更新对象在监听更改时发出 "create"和 "delete"事件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36011631/

相关文章:

go - 如何停止正在监听 RethinkDB 变更源的 goroutine?

javascript - Rethinkdb 对象数组到数组对象

RethinkDB 查询查找重复的电子邮件地址(记录)

RethinkDB 嵌套分组

mysql - 查询以确定数据库中表的大小? (mysql)

database - 如何使用模型在 Phalcon Framework 中转储查询

go - 如何使用 gorethinkdb 的地理空间命令在 go 中制作圆圈

redis - php时间序列数据库

mysql - 对于数据库中的这种存储,最好的想法是什么?

node.js - Node.js 中用户的 rethinkdb 密码