graphene-django/examples/cookbook
Jason Kraus c049ab7470
WIP: Merge master into v3 (#1086)
* merge master into v3

* fix order_by snake casing by checking if value is None, switch executor to execution_context_class since schema.execute no longer supports executor

* fix linting by removing duplicate defintion and test of convert_form_field_to_string_list
2020-12-30 15:37:57 -08:00
..
cookbook Warn if fields or exclude are not defined on DjangoObjectType (#981) 2020-06-11 11:09:52 +01:00
__init__.py WIP: Merge master into v3 (#1086) 2020-12-30 15:37:57 -08:00
dummy_data.json adding some dummy data 2016-11-03 21:01:27 -04:00
manage.py Isolated Graphene Django in a new package 2016-09-17 16:31:17 -07:00
README.md Update example query document link 2017-12-30 18:34:46 +07:00
requirements.txt Bump django from 3.0.3 to 3.0.7 in /examples/cookbook (#979) 2020-06-06 12:48:19 +01:00
setup.cfg Make examples diff better against each other 2018-06-13 10:29:50 -04:00

Cookbook Example Django Project

This example project demos integration between Graphene and Django. The project contains two apps, one named ingredients and another named recipes.

Getting started

First you'll need to get the source of the project. Do this by cloning the whole Graphene repository:

# Get the example project code
git clone https://github.com/graphql-python/graphene-django.git
cd graphene-django/examples/cookbook

It is good idea (but not required) to create a virtual environment for this project. We'll do this using virtualenv to keep things simple, but you may also find something like virtualenvwrapper to be useful:

# Create a virtualenv in which we can install the dependencies
virtualenv env
source env/bin/activate

Now we can install our dependencies:

pip install -r requirements.txt

Now setup our database:

# Setup the database
./manage.py migrate

# Load some example data
./manage.py loaddata ingredients

# Create an admin user (useful for logging into the admin UI
# at http://127.0.0.1:8000/admin)
./manage.py createsuperuser

Now you should be ready to start the server:

./manage.py runserver

Now head on over to http://127.0.0.1:8000/graphql and run some queries! (See the Graphene-Django Tutorial for some example queries)