如何定义针对ORM分页的中继连接?

时间:2015-09-15 13:57:12

标签: javascript node.js graphql relayjs graphql-js

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

1 个答案:

答案 0 :(得分:6)

光标为How long do browsers cache HTTP 301s?

  

此字段的结果被Relay视为不透明,但会按照下面“参数”部分所述传回服务器。

因此,根据您的数据模型,可能适合传递像ID字符串一样简单的事物作为游标,然后您可以在服务器上使用像WHERE id > ?这样的子句加载连接。你可以在这里打包任意信息,例如Base-64编码。

你看一下opaque,你会大致了解你需要在你的ORM支持的存储上实现的语义,但不是像它一样索引到数组中,你我将合成一个不透明的光标,其中包含足够的信息以便随后对您的ORM进行分页。