GalsenApi est une API qui vous permet de manipuler facilement des données sur le Sénégal. Ce projet s'inspire du package Galsenify
Read in English
- Créez un environnement virtuel :
python -m venv .venv
- Activez l'environnement virtuel :
source .venv/bin/activate
- Installez les dépendances :
pip install requirements.txt
- Effectuez les migrations :
python manage.py makemigrations
python manage.py migrate
- Créez un super utilisateur :
python manage.py createsuperuser
- Lancez le serveur :
python manage.py runserver
Créez un fichier .env dans le projet Django pour stocker la clé secrète.
GET /api/regions/
GET /api/regions/1/
GET /api/departements
GET /api/departements/1/
GET api/villages
GET /api/villages/1
GET /api/pays/
Pour récupérer toutes les régions : GET https://galsenapi.pythonanywhere.com/api/regions/
Exemple de résultat :
{
[
{
"id": 1,
"nom": "Dakar",
"code": "DK",
"population": 4042225,
"superficie": 547,
"departments": [
"Dakar",
"Pikine",
"Guédiawaye",
"Rufisque",
"Keur Massar"
]
},
{
"id": 2,
"nom": "Diourbel",
"code": "DB",
"population": 1980821,
"superficie": 4824,
"departments": [
"Diourbel",
"Bambey",
"Mbacké"
]
}]}
Pour récupérer une seule région : https://galsenapi.pythonanywhere.com/api/regions/1/
Exemple de résultat :
{
"id": 1,
"nom": "Dakar",
"code": "DK",
"population": 4042225,
"superficie": 547,
"departments": ["Dakar", "Pikine", "Guédiawaye", "Rufisque", "Keur Massar"]
}
Created by Lassana SIBY
Merci à Daouda BA pour les donées.
Views region et departement
def regions_view(request):
query = request.GET.get('q')
url = 'https://galsenapi.pythonanywhere.com/api/regions/'
params = {'search': query} if query else {}
response = requests.get(url, params=params)
data = response.json()
regions = data
context = {'regions': regions, 'query': query}
return render(request, 'demo/regions.html', context)
def departments_view(request):
query = request.GET.get('q')
url = 'https://galsenapi.pythonanywhere.com/api/departements/'
params = {'search': query} if query else {}
response = requests.get(url, params=params)
data = response.json()
departments = data
context = {'departments': departments, 'query': query}
return render(request, 'demo/departements.html', context)
def villages_view(request):
query = request.GET.get('q')
url = 'https://galsenapi.pythonanywhere.com/api/villages/'
params = {'search': query} if query else {}
response = requests.get(url, params=params)
data = response.json()
villages = data
context = {'villages': villages, 'query': query}
return render(request, 'demo/village.html', context)