Skip to main content

Graphene Django integration

Project description

Please read UPGRADE-v2.0.md to learn how to upgrade to Graphene 2.0.


Graphene Logo Graphene-Django Build Status PyPI version Coverage Status

A Django integration for Graphene.

Documentation

Visit the documentation to get started!

Quickstart

For installing graphene, just run this command in your shell

pip install "graphene-django>=2.0"

Settings

INSTALLED_APPS = (
    # ...
    'graphene_django',
)

GRAPHENE = {
    'SCHEMA': 'app.schema.schema' # Where your Graphene schema lives
}

Urls

We need to set up a GraphQL endpoint in our Django app, so we can serve the queries.

from django.conf.urls import url
from graphene_django.views import GraphQLView

urlpatterns = [
    # ...
    url(r'^graphql$', GraphQLView.as_view(graphiql=True)),
]

Examples

Here is a simple Django model:

from django.db import models

class UserModel(models.Model):
    name = models.CharField(max_length=100)
    last_name = models.CharField(max_length=100)

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

from graphene_django import DjangoObjectType
import graphene

class User(DjangoObjectType):
    class Meta:
        model = UserModel

class Query(graphene.ObjectType):
    users = graphene.List(User)

    @graphene.resolve_only_args
    def resolve_users(self):
        return UserModel.objects.all()

schema = graphene.Schema(query=Query)

Then you can simply query the schema:

query = '''
    query {
      users {
        name,
        lastName
      }
    }
'''
result = schema.execute(query)

To learn more check out the following examples:

Contributing

See CONTRIBUTING.md.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

graphene-django-2.12.1.tar.gz (61.1 kB view details)

Uploaded Source

Built Distribution

graphene_django-2.12.1-py2.py3-none-any.whl (76.3 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file graphene-django-2.12.1.tar.gz.

File metadata

  • Download URL: graphene-django-2.12.1.tar.gz
  • Upload date:
  • Size: 61.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.3.1 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.7.8

File hashes

Hashes for graphene-django-2.12.1.tar.gz
Algorithm Hash digest
SHA256 3d92bf2c43834f3e1caa1c24b79cc5f7c5974670d7d92fd3a4f28c2fd7680c5b
MD5 1d338dff371244a0bce84dcdbbdc5a09
BLAKE2b-256 e003bd754ae99121cc28d73011dd6d1cf36f107e094da9b19c12bc4c741bbd54

See more details on using hashes here.

Provenance

File details

Details for the file graphene_django-2.12.1-py2.py3-none-any.whl.

File metadata

  • Download URL: graphene_django-2.12.1-py2.py3-none-any.whl
  • Upload date:
  • Size: 76.3 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.5.0.1 requests/2.24.0 setuptools/47.3.1 requests-toolbelt/0.9.1 tqdm/4.47.0 CPython/3.7.8

File hashes

Hashes for graphene_django-2.12.1-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 03dfe2081c256e56d94d90b33b0bf6fa46ec274186023ccffb9c3aa46a856587
MD5 abee3965641aa99ce51e33061432b704
BLAKE2b-256 ccd871ca614298f1a60c2358cac1ae94c1f4aec31e9e9ef09b32d1f762f509ac

See more details on using hashes here.

Provenance

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page