Need help with graphene-gae?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

graphql-python
119 Stars 13 Forks BSD 3-Clause "New" or "Revised" License 212 Commits 11 Opened issues

Description

GraphQL Support for Google AppEngine [DEPRECATED - Looking for maintainers]

Services available

!
?

Need anything else?

Contributors list

===============================

Graphene GAE (deprecated!)

.. image:: https://travis-ci.org/graphql-python/graphene-gae.svg?branch=master :target: https://travis-ci.org/graphql-python/graphene-gae

.. image:: https://coveralls.io/repos/github/graphql-python/graphene-gae/badge.svg?branch=master :target: https://coveralls.io/github/graphql-python/graphene-gae?branch=master

.. image:: https://img.shields.io/pypi/v/graphene-gae.svg :target: https://pypi.python.org/pypi/graphene-gae

(This repository is deprecated due to lack of maintainers. If you're interested in taking over let us know via

this issue 
_ )

A Google AppEngine integration library for

Graphene 
__
  • Free software: BSD license
  • Documentation: https://graphene_gae.readthedocs.org.

Upgrade Notes

If you're upgrading from an older version (pre 2.0 version) please check out the

Graphene Upgrade Guide 
__.

Installation

To install Graphene-GAE on your AppEngine project, go to your project folder and runthis command in your shell:

.. code:: bash

pip install graphene-gae -t ./libs

This will install the library and its dependencies to the

libs
folder under your projects root - so the dependencies get uploaded withyour GAE project when you publish your app.

Make sure the

libs
folder is in your python path by adding the following to your
appengine_config.py
:

.. code:: python

import sys

for path in ['libs']: if path not in sys.path: sys.path[0:0] = [path]

Examples

Here's a simple GAE model:

.. code:: python

class Article(ndb.Model):
    headline = ndb.StringProperty()
    summary = ndb.TextProperty()
    text = ndb.TextProperty()

author_key = ndb.KeyProperty(kind='Author')

created_at = ndb.DateTimeProperty(auto_now_add=True)
updated_at = ndb.DateTimeProperty(auto_now=True)

To create a GraphQL schema for it you simply have to write the following:

.. code:: python

import graphene
from graphene_gae import NdbObjectType

class ArticleType(NdbObjectType): class Meta: model = Article

class QueryRoot(graphene.ObjectType): articles = graphene.List(ArticleType)

@graphene.resolve_only_args
def resolve_articles(self):
    return Article.query()

schema = graphene.Schema(query=QueryRoot)

Then you can simply query the schema:

.. code::python

query = '''
    query GetArticles {
      articles {
        headline,
        summary,
        created_at
      }
    }
'''
result = schema.execute(query)

To learn more check out the following

examples 
__:
  • Starwars 
    __

Contributing

After cloning this repo, ensure dependencies are installed by running:

.. code:: sh

make deps
make install

Make sure tests and lint are running:

.. code:: sh

make test
make lint

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.