我尝试了解 Django 中的 Graphql 并使用 graphene
和 graphene_django
.
我的前端可能会使用 Vuejs 和 Apollo 客户端构建。
互联网上的所有教程都是关于经典的 Graphql 或 Relay。
似乎建议使用其节点和边缘进行中继(是吗?)。
但是 Node 和 Edges 可用于接口(interface) graphene.Node
或接口(interface)graphene.relay.Node
.
这两者之间有什么区别吗?
补充问题:即使我不会使用 Relay/React,使用节点和边也是一个好习惯吗? Apollo 文档都是关于经典 Graphql 的。
问候
最佳答案
正如 Yang HG 所指出的,relay.Node 和 Node 之间没有区别。
使用 Node 接口(interface)是否是一个好习惯,它最好的一点是它强制继承 Node 的类型有一个 ID。第二个优势:Connection (向节点的连接和边缘添加额外的字段)。
阅读此内容以了解如何为所有节点强制执行 ID:https://atheros.ai/blog/graphql-interfaces-and-unions-how-to-design-graphql-schema
关于django - graphene.Node 和 graphene.relay.Node 有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56117612/