graphene.Node和graphene.relay.Node有什么区别?

时间:2019-05-13 17:58:50

标签: django graphql graphene-python graphene-django

我尝试用Django理解Graphql,并使用graphenegraphene_django。 我的前端可能将使用Vuejs和Apollo客户端构建。 互联网上的所有教程都是关于经典Graphql或Relay的。 建议使用其节点和边缘进行中继(是吗?)。 但是接口graphene.Node或接口graphene.relay.Node都可以使用Node and Edges。

这两个之间有什么区别吗?

补充问题:即使我不使用中继/反应,使用节点和边缘也是一种好习惯吗? Apollo文档都是关于经典Graphql的。

致谢

1 个答案:

答案 0 :(得分:1)

正如Yang HG指出的那样,relay.Node和Node之间没有区别。

使用Node接口是否是一个好习惯,关于它的最好的事情是它强制继承Node的类型具有ID。第二个优点:Connection(向节点的“连接和边缘”添加额外的字段)。

请阅读以下内容,以了解如何对所有节点强制执行ID:https://atheros.ai/blog/graphql-interfaces-and-unions-how-to-design-graphql-schema