Epic Events est une entreprise de conseil et de gestion dans l'événementiel qui répond aux besoins des start-up voulant organiser des « fêtes épiques ». L'objectif de ce projet est d'élaborer un système CRM sécurisé interne à l'entreprise.
- Élaborer l'architecture d'une base de données relationnelle
- Mettre en œuvre une base de données sécurisée avec Django ORM et PostgreSQL
- django
- djangorestframework
- psycopg2-binary
- python-dotenv
Project
├── epic
│ ├── api
│ ├── core : répertoire contenant les applications de notre CRM
│ │ ├── clients
│ │ ├── contracts
│ │ ├── events
│ │ ├── users
│ ├── epic : répertoire du projet django
│ │ ├── settings.py : fichier de réglages django
│ │ ├── urls.py : fichier principal des endpoints
│ │ ├── ..
│ ├── manage.py : fichier principal de gestion django
|── requirements.txt
|── documents
│ ├── db : dumps pour la configuration de la base de données
│ ├── postman_collections : collections Postman
│ ├── ERD.png : diagramme entité-relation
│ ├── ..
Clonez le repository sur votre machine.
git clone https://github.com/GDSDC/OpenclassroomsProject-P12.gitAccédez au répertoire cloné.
cd OpenclassroomsProject-P12Créez l'environnement virtuel env.
python3 -m venv envActivez votre environnement virtuel env nouvellement créé.
source env/bin/activateInstallez les paquets présents dans la liste requirements.txt.
pip install -r requirements.txtInstallez PostgreSQL 14 via edb par example : https://www.enterprisedb.com/docs/postgresql_journey/02_installing/
Créez une base de donnée nommée 'epic_crm_db'.
Connexion avec Django : Si besoin, vous pouvez modifier les identifiants de l'administrateur de la base de données ainsi que d'autres détails de connexion dans le fichier epi/settings.py (voir DATABASES).
Initialisez/Restorez la base de données à l'aide des dump.
psql -U <db_admin_name> -d epic_crm_db < documents/db/<dump.sql><db_admin_name> : renseignez le nom de votre administrateur de base de données (généralement postrgre)
<dump.sql> : vous pouvez choisir d'initialiser/restaurer la base de données à l'aide des documents/db/dumps suivantes :
epic_crm_db_init.sql-> base initiale peuplée uniquement d'un superuser (email=admin@admin.com / mdp=admin).epic_crm_db_example.sql-> base peuplée de quelques données pour démonstration.
Accédez au dossier de travail.
cd epicDémarrez le serveur local.
python manage.py runserverRetrouvez des exemples de requêtes http en important sur Postman la collection documents/postman_collections/P12_epic_crm_api.postman_collection.json.

