graphene-django/examples/cookbook
Firas K af8888f58e
Upgrade github actions versions, default python and dev dependencies (#1407)
* Use Python 3.10 for deployments on PyPi

* Update gh-action-pypi-publish version

* Update python version

* Update checkout and setup-python versions

* Upgrade dev dependencies

* fromat examples and few files to follow black new version

* Upgrade pytest version

---------

Co-authored-by: Firas Kafri <firaskafri@Firass-MacBook-Pro-2.local>
2023-05-03 13:25:16 +03:00
..
cookbook Upgrade github actions versions, default python and dev dependencies (#1407) 2023-05-03 13:25:16 +03:00
__init__.py WIP: Merge master into v3 (#1086) 2020-12-30 15:37:57 -08:00
dummy_data.json 👷 Add pre-commit (#1336) 2022-10-19 17:10:30 +03:00
manage.py Isolated Graphene Django in a new package 2016-09-17 16:31:17 -07:00
README.md Clarify cookbook example READMEs 2022-11-15 09:56:28 +03:00
requirements.txt Bump django from 3.1.8 to 3.1.14 in /examples/cookbook (#1283) 2021-12-10 12:58:03 +03:00
setup.cfg Make examples diff better against each other 2018-06-13 10:29:50 -04:00

Cookbook Example (Relay) 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)