2017-08-26 19 views
0

那么,我一直在使用Relay,我意识到我仍然不确定使用Relay,Graphql,React和Dynamodb的一些基本方面。中继是否需要数据库中的id字段?

将Dynamodb用作数据库并且Dynamodb不鼓励使用uuids作为标识符。与此同时,中继Nodedefinitions函数期望输出一个类型和id字段的对象,所以我的问题是,您是否可以调和Relay和Dynamodb的最佳实践?

还是只是我谁不明白?

回答

0

Relay对您的数据库没有任何要求。你可以使用你想要的Dynamo中的任何一种主键。

你有两个功能结束:

  1. f(relayId) -> dynamoEntity
  2. g(dynamoEntity) -> relayId

这些功能可以实现,只要你喜欢。例如。也许你可以对Dynamo主键进行64位编码以产生一个中继ID。

+0

如果我导出的中继节点对象像: '出口常量{nodeInterface,nodeField} = nodeDefinitions(idResol版本,typeResolver);' 和idResolver函数具有中继'fromGlobalId'这样'常量{类型,识别符} = fromGlobalId(globalId);',我是否应该将id更改为一个接收relayId的函数,如'const {type,f(relayId)} = fromGlobalId(globalId);' –

相关问题