javascript - 您如何为针对 ORM 的分页定义中继连接?

标签 javascript node.js graphql relayjs graphql-js

我查看了 Relay 的所有文档,似乎没有关于如何使用 ORM 构建 Relay 连接的直接解释。所有示例似乎都使用了 connectionFromArray 方法,如果您将数据存储在内存中,这很好,但是当您将数据存储在数据库中时,您将如何提供必要的信息连接的分页工作?

最佳答案

光标是opaque :

The result of this field is considered opaque by Relay, but will be passed back to the server as described in the "Arguments" section below.

因此,根据您的数据模型,将像 ID 字符串这样简单的东西作为游标传递可能是合适的,然后您可以在服务器上使用它来使用 WHERE id > 之类的子句加载连接?。例如,您可以在此处打包分页所需的任意信息,并对其进行 Base-64 编码。

你看看the code which returns a connection from an array ,您将大致了解您需要在支持 ORM 的存储之上实现的语义,但您将合成一个包含足够信息的不透明游标,而不是像它那样索引到数组中使用您的 ORM 进行后续分页。

关于javascript - 您如何为针对 ORM 的分页定义中继连接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32588021/

相关文章:

javascript - 解释以下复杂的 javascript return 语句的执行流程

node.js - 发生未处理的异常 : D:\workspace-angular\demoapp1 contains both . browserslistrc 和 browserslist

node.js - 使用 WebSocket 是否有服务器成本?

node.js - 无法从 mongojs 连接,但命令行正常

javascript - 通过使用 Ruby 或 Javascript 检查 API 进行 Mediawiki 身份验证

javascript - 下拉菜单无法选择并打开 div...我做错了什么?

javascript - amCharts 不平衡

javascript - 如何从 Apollo graphql 客户端状态检索值

javascript - 在命令行上运行 graphql 示例会导致意外的标记

graphql - 嵌套对象的 Hasura GraphQL UPSERT 突变