6

我正在研究开发一个 GraphQL API。我有一个 django/elasticsearch/mysql 后端,我正在弄清楚 GraphQL 如何适合这张图片。

我阅读了有关 graphene-django 项目的信息,但它似乎与 Django ORM 紧密结合,所以我想知道 elasticsearch 是否适合这个配方。

我刚刚开始这项研究,所以即使这个问题也有可能是没有意义的。

关于如何做到这一点的任何线索?

4

2 回答 2

6

graphene 是来自 python 的通用 GraphQL 服务器实现。使用石墨烯,您可以构建图形数据的表示并从任何地方(MySQL、ElasticSearch、Mongo 等)查询它 - 每个字段的值基本上由解析器函数解析,该解析器函数可以从任何需要的地方读取数据。

graphene-django 只是石墨烯的扩展,它自动包装 django ORM,让您轻松地将 django ORM 对象作为架构的一部分公开,而无需经历重新定义 ORM 模型中已经定义的所有对象和字段的麻烦。

但是,它并不限制您只能使用 django ORM。您可以在 GraphQL 模式中的关系中有许多对象,一些对象可以针对 django ORM 工作,而其他对象可以从 ElasticSearch 或您存储数据的其他任何地方读取。

我建议您观看这个简短的视频,作为如何开始编写 GraphQL 服务器的介绍 - https://www.youtube.com/watch?v=UBGzsb2UkeY 然后前往http://graphene-python.org并查看文档。

于 2017-01-13T08:37:28.263 回答
0

一些尝试始于https://pypi.org/project/graphene-elastic/

然而,仍然是阿尔法。

于 2019-08-26T19:03:16.373 回答