我已阅读Firebase data consistency across multiple nodes,多次更新内容按预期工作,但我不知道如何执行以下操作:
假设我有2个集合:answers
和posts
。现在我想写一个帖子的答案,并在post对象上增加答案计数器,保持集合之间的数据一致。所以实际的对象看起来与这些类似:
发表
{
...,
answers: X
}
答案
{
postID: <random string>,
...
}
正如我上面所说,该链接回答了如何进行合并更新,但是,如何确保answers
属性只会递增/递减(如果删除)1?到目前为止我所拥有的是:
"answers": {
".validate": "newData.isNumber() && (newData.val() === data.val() + 1 || newData.val() === data.val() - 1)"
}
显然这会起作用(我假设,还没有尝试过),但这仍然允许我创建一个新答案并减少计数器。我怎样才能克服这个问题?