Ce projet est un système de gestion hôtelière implémenté avec Django (pour le backend) et Next.js (pour le frontend). Il offre des fonctionnalités pour gérer les utilisateurs et les hôtels, y compris les opérations CRUD, l'authentification et la réinitialisation de mot de passe.
├── backend
│ ├── backend
│ │ ├── __init__.py
│ │ ├── asgi.py
│ │ ├── settings.py
│ │ ├── urls.py
│ │ └── wsgi.py
│ ├── backend_api
│ │ ├── __init__.py
│ │ ├── admin.py
│ │ ├── apps.py
│ │ ├── migrations
│ │ │ └── __init__.py
│ │ ├── models.py
│ │ ├── serializers.py
│ │ ├── tests.py
│ │ ├── urls.py
│ │ └── views.py
│ ├── db.sqlite3
│ └── manage.py
├── frontend
│ ├── src
│ │ ├── app
│ │ │ ├── forgot/
│ │ │ │ └── page.tsx
│ │ │ ├── forgot/
│ │ │ │ └── reset/
│ │ │ │ └── [uuid]/
│ │ │ │ └── [token]/
│ │ │ │ └── page.tsx
│ │ │ ├── login/
│ │ │ │ └── page.tsx
│ │ │ ├── register/
│ │ │ │ └── page.tsx
│ │ │ ├── favicon.ico
│ │ │ ├── globals.css
│ │ │ ├── layout.tsx
│ │ │ └── page.tsx
│ │ ├── components/
│ │ ├── lib/
│ │ └── ...
└── README.md
git clone https://github.com/MrKtheNOob/Red_Product.git
cd project1cd backend
python -m venv venv
source venv/bin/activate # Sur Windows, utilisez `venv\Scripts\activate`
pip install -r ./requirements.txt
python manage.py migrate
python manage.py runserver- L'API du backend sera disponible à l'adresse
http://127.0.0.1:8000/.
cd ../frontend
npm install
npm run dev- Le frontend sera disponible à l'adresse
http://localhost:3000/.
- Accéder à l'API à l'adresse
http://127.0.0.1:8000/. - Accéder au frontend à l'adresse
http://localhost:3000/.
- Créer un Utilisateur :
POST /api/users/ - Lister les Utilisateurs :
GET /api/users/ - Récupérer un Utilisateur :
GET /api/users/<id>/ - Mettre à Jour un Utilisateur :
PUT /api/users/<id>/ - Supprimer un Utilisateur :
DELETE /api/users/<id>/
- Créer un Hôtel :
POST /api/hotels/ - Lister les Hôtels :
GET /api/hotels/ - Récupérer un Hôtel :
GET /api/hotels/<id>/ - Mettre à Jour un Hôtel :
PATCH /api/hotels/<id>/ - Supprimer un Hôtel :
DELETE /api/hotels/<id>/
- Connexion :
POST /api/login/ - Déconnexion :
POST /api/logout/ - Vérification d'Authentification :
GET /api/auth-check/ - Obtenir un Jeton CSRF :
GET /api/csrf-token/
- Demande de Réinitialisation :
POST /api/password-reset/request/ - Confirmation de Réinitialisation :
POST /api/password-reset/confirm/- Charge utile :
{ "uid": "<uid>", "token": "<token>", "new_password": "<new_password>" }
- Charge utile :
- Le chemin du frontend
forgot/reset/[uuid]/[token]/doit exister et envoyer une requête POST à/api/password-reset/confirm/.
- L'authentification des utilisateurs est mise en œuvre à l'aide du système d'authentification de Django.
- Utilisez l'authentification basée sur les sessions ou les jetons pour l'accès à l'API.