Django GraphQL Countries
Countries support for Django GraphQL
Dependencies
- Python ≥ 3.4
- Django ≥ 1.11
- PostGIS database (PostgreSQL ≥ 9.4)
Installation
Install last stable version from Pypi.
pip install django-graphql-countries
Add countries
to your INSTALLED_APPS settings:
INSTALLED_APPS = [
...
'countries.apps.CountriesAppConfig',
]
Apply migrations:
python manage.py migrate
Load data
The loadcountries
management command read all fixtures and re-loaded into the database:
python manage.py loadcountries
Schema
Add queries to your GraphQL schema
import graphene
import graphql_countries
class Query(graphene.ObjectType, graphql_countries.Query):
"""GraphQL Queries"""
schema = graphene.Schema(query=Query)
Query
Countries GeoJSON outlines:
query {
countries {
capital
outlines {
type
coordinates
}
}
}
Relay
Complete support for Relay.
import graphene
import graphql_countries
class Query(graphene.ObjectType, graphql_countries.relay.Query):
"""Relay Queries"""
schema = graphene.Schema(query=Query)
Query
GeoJSON outlines for
query {
countries(cca2: "VN") {
edges {
node {
capital
outlines {
type
coordinates
}
}
}
}
}