* Add venv and .venv to gitignore since common venv paths
* Update cookbook-plain app requirements and local-dev notes
This also adds the DEFAULT_AUTO_FIELD to the app's Django settings to
resolve this warning when running `migrate`:
```
ingredients.Category: (models.W042) Auto-created primary key used when not defining a primary key type, by default 'django.db.models.AutoField'.
HINT: Configure the DEFAULT_AUTO_FIELD setting or the IngredientsConfig.default_auto_field attribute to point to a subclass of AutoField, e.g. 'django.db.models.BigAutoField'.
```
* Fix #1417 graphiql explorer styles by including official CSS
Like in the official graphiql-plugin-explorer example here
|
||
|---|---|---|
| .. | ||
| cookbook | ||
| __init__.py | ||
| manage.py | ||
| README.md | ||
| requirements.txt | ||
| setup.cfg | ||
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-plain
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)
Testing local graphene-django changes
In requirements.txt, replace the entire graphene-django=... line with the following (so that we install the local version instead of the one from PyPI):
../../ # graphene-django