@@ -67,6 +67,18 @@ Client → API (Django) → Auth (JWT + Roles) → PostgreSQL
6767docker-compose up --build
6868```
6969
70+ La API estará disponible en:
71+
72+ ```
73+ http://localhost:8000/api/
74+ ```
75+
76+ ### Detener contenedores
77+
78+ ``` bash
79+ docker-compose down
80+ ```
81+
7082### 🔹 Modo Producción (simulado)
7183
7284``` bash
@@ -79,20 +91,20 @@ docker-compose -f docker-compose.yml -f docker-compose.prod.yml up -d --build
7991
8092### Auth
8193
82- Método Endpoint Descripción
83- -------- --------------------- --------------------
84- POST /api/login/ Login JWT
85- POST /api/token/refresh/ Refresh token
86- POST /api/logout/ Logout + Blacklist
87- GET /api/protected/ Ruta protegida
94+ | Método | Endpoint | Descripción |
95+ | --------| ----------| -------------|
96+ | POST | /api/login/ | Login con JWT |
97+ | POST | /api/refresh/ | Refresh token |
98+ | GET | /api/protected/ | Vista protegida |
99+
100+
88101
89102### Productos
90103
91- Método Endpoint
92- -------- ------------------------------
93- GET /api/products/
94- POST /api/products/
95- DELETE /api/products/` <id> ` {=html}/
104+ | Método | Endpoint | Descripción |
105+ | GET | /api/products/ | Listar productos |
106+ | POST | /api/products/ | Crear producto (staff/admin) |
107+ | DELETE | /api/products/{id}/ | Eliminar (solo admin) |
96108
97109------------------------------------------------------------------------
98110
@@ -124,6 +136,66 @@ Incluye comandos para generar:
124136
125137Usando Faker.
126138
139+ ## 🧑💻 Usuarios de Prueba
140+
141+ Se generan automáticamente:
142+
143+ - Clientes
144+ - Staff
145+ - Admin
146+
147+ Y productos falsos usando Faker.
148+
149+ ---
150+
151+ ## 🗄️ Acceso a la Base de Datos (PostgreSQL en Docker)
152+
153+ ⚠️ Este proyecto ** NO usa el usuario ` postgres ` por defecto** . Se define un usuario personalizado en el archivo ` .env ` :
154+
155+ ``` env
156+ POSTGRES_USER=django_user
157+ POSTGRES_PASSWORD=django_pass
158+ POSTGRES_DB=django_db
159+ ```
160+
161+ ### ✅ Comando correcto para acceder a la BD
162+
163+ ``` bash
164+ docker-compose exec db psql -U django_user -d django_db
165+ ```
166+
167+ ### ❌ Comando incorrecto (generará error)
168+
169+ ``` bash
170+ docker-compose exec db psql -U postgres
171+ ```
172+
173+ ### 📌 Comandos útiles dentro de PostgreSQL
174+
175+ ``` sql
176+ \l -- listar bases de datos
177+ \dt -- listar tablas
178+ \du -- listar usuarios
179+ ```
180+
181+ Ejemplos:
182+
183+ ``` sql
184+ SELECT * FROM users_customuser;
185+ SELECT * FROM products_product;
186+ ```
187+
188+ ---
189+
190+ ## 🛡️ Seguridad Implementada
191+
192+ - JWT con rotación
193+ - Blacklist de refresh tokens
194+ - Rate limiting en login
195+ - Validaciones por rol
196+
197+
198+
127199------------------------------------------------------------------------
128200
129201## 🗂 Estructura del Proyecto
@@ -148,6 +220,17 @@ Usando Faker.
148220- 🔜 Monitoreo
149221- 🔜 CI/CD
150222
223+ ---
224+
225+ ## 🎯 Objetivo del Repositorio
226+
227+ Este proyecto funciona como ** plantilla base reutilizable** para futuros proyectos:
228+
229+ - APIs seguras
230+ - Backend moderno
231+ - Tests incluidos desde el inicio
232+ - Docker listo para producción
233+
151234------------------------------------------------------------------------
152235
153236## ✅ Conclusión
@@ -165,4 +248,4 @@ intermedio-avanzado**, ideal para:
165248
166249## 📄 Licencia
167250
168- MIT --- Uso libre para cualquier proyecto .
251+ Proyecto educativo para aprendizaje y reutilización .
0 commit comments