使用 RethinkDB 调用 cursor.changes() 时如何获取初始文档
Posted
技术标签:
【中文标题】使用 RethinkDB 调用 cursor.changes() 时如何获取初始文档【英文标题】:How to get initial documents when calling cursor.changes() with RethinkDB 【发布时间】:2015-06-30 18:48:19 【问题描述】:文档对此明确含糊:
http://rethinkdb.com/docs/changefeeds/javascript/
Point changefeeds 将始终返回初始值并具有初始化状态;在未过滤的表上返回更改的提要永远不会返回初始值。在更复杂的查询中返回更改的提要可能会或可能不会返回初始值,具体取决于聚合的类型。
有没有办法通过更改提要强制初始文档?
假设我有一个任意的query
。我们可以致电query.changes.run(//...)
并获取更改提要,但我想确保获得初始文档。至少,我想要一致性!
【问题讨论】:
【参考方案1】:目前没有可以放在那里的 optarg 来获得它,但在 2.2 版本中,您将能够使用 include_initial
optarg 来实现它:https://github.com/rethinkdb/rethinkdb/issues/3579。
【讨论】:
以上是关于使用 RethinkDB 调用 cursor.changes() 时如何获取初始文档的主要内容,如果未能解决你的问题,请参考以下文章
socket.io vs RethinkDB changefeed
如何使用 JavaScript 在 ReThinkDB 中的 ReQL 中的数组上应用过滤器