Adds GraphQL support to your Flask application.
Just create a GraphQL
instance from flask_graphql
from flask_graphql import GraphQL
graphql_blueprint = GraphQL(app, schema=schema)
This will add /graphql
and /graphiql
endpoints to your app.
This package provides the following Views:
GraphQLView
: endpoint for expose the GraphQL schemaGraphiQLView
: Graphical Interface for operate with GraphQL easily
You can also add only the views you want to use:
from flask_graphql import GraphQLView, GraphiQLView
app.add_url_rule('/graphql', view_func=GraphQLView.as_view('graphql', schema=schema))
schema
: TheGraphQLSchema
object that you want the view to execute when it gets a valid request.pretty
: Whether or not you want the response to be pretty printed JSON.executor
: TheExecutor
that you want to use to execute queries.root_value
: Theroot_value
you want to provide toexecutor.execute
.default_query
: Thedefault_query
you want to provide to GraphiQL interface.
You can also subclass GraphQLView
and overwrite get_root_value(self, request)
to have a dynamic root value
per request.
class UserRootValue(GraphQLView):
def get_root_value(self, request):
return request.user