我尝试用Django理解Graphql,并使用graphene
和graphene_django
。
我的前端可能将使用Vuejs和Apollo客户端构建。
互联网上的所有教程都是关于经典Graphql或Relay的。
建议使用其节点和边缘进行中继(是吗?)。
但是接口graphene.Node
或接口graphene.relay.Node
都可以使用Node and Edges。
这两个之间有什么区别吗?
补充问题:即使我不使用中继/反应,使用节点和边缘也是一种好习惯吗? Apollo文档都是关于经典Graphql的。
致谢
答案 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