关于GraphQL
本身的语法,可以参考我写的GraphQL 使用手册。
graphene
是为python提供的GraphQL
扩展,项目组在GraphQL Python。该项目主要有以下几个特点:
- 提供十分方便的自定义功能,从解析到查询到处理结果,都能够自定义
- 有
Dataloader
功能,能解决N+1
问题 - 与流行框架有现成的集成扩展
graphene-django
、flask-graphql
、graphene-gae
以及通用的graphene-sqlalchemy
- 支持复杂的Relay查询
- 支持复杂的
Connection
查询,能实现分页的功能 - 支持
NoSQL
、MySQL
甚至直接支持Python对象作为数据源 - 最大的缺点是,文档写得太简单了,高级用法全得靠自己摸索
下面以实际的例子来说明如何使用,毕竟官方文档那啥。完整的例子见我的gist: graphene-sqlalchemy使用示例