我是Relay的新手,我正在努力整理我的第一款应用。我已经有一个GraphQL服务器(使用Graphene),它由PostgreSQL DB通过SQLAlchemy automap支持,并作为Flask应用程序发布。现在,我正在尝试将前端组合在一起,看起来中继编译器在客户端期望一个GraphQL模式文件。我想知道是否有办法让动态自动生成这个模式文件,以及如何设置它。
我正在使用https://github.com/kriasoft/react-static-boilerplate作为我的应用的起点。
感谢。
答案 0 :(得分:2)
浏览了Graphene代码库后,我在graphql-python的utils模块中找到了schema_printer,它为我完成了工作:
import json
from schema import schema
import sys
from graphql.utils import schema_printer
my_schema_str = schema_printer.print_schema(schema)
fp = open("schema.graphql", "w")
fp.write(my_schema_str)
fp.close()
答案 1 :(得分:0)
对我来说,https://docs.graphene-python.org/projects/django/en/latest/introspection/ 很有帮助。 在我的例子中,架构是在 apiApp 的 schema.py 文件中定义的,因此检索 schema.json 的命令如下。
./manage.py graphql_schema --schema apiApp.schema.schema --out schema.json