- Categories
- Roles
- Users
- Usuarios
- Roles
- Autenticación
-- Usuarios
- id
- name
- last_name
- username
- password
- email
- rol_id
- status
-- Roles
- id
- name
- status- Login
- Creación de token (JWT - JSONWEBTOKEN | access_token, refresh_token).
- Validación de contraseñas encriptadas (bcrypt).
- Registro
- Encriptación de contraseñas (bcrypt).
- Recuperar contraseña
- Generar una contraseña nueva.
- Enviar un correo con un template, mencionando la contraseña generada.
- CRUD para cada Modelo
- Listado con paginación (Obtener los datos relacionados).
- Obtener registro por id (Obtener los datos relacionados).
- Creación de registro.
- Actualización de registro.
- Eliminar registro (SOFTDELETE).
- Decoradores
- Proteger rutas con autenticación.
- Proteger rutas por rol.
- Documentación y Validaciones
- Swagger
- Schemas
- Despliegue
FLASK_APP='main.py'
FLASK_DEBUG=True
FLASK_RUN_HOST=127.0.0.1
FLASK_RUN_PORT=5000
ENVIRONMENT='development'
DATABASE_URL='postgresql://postgres:mysql@localhost:5432/foodsavior'
JWT_SECRET='tecsup'
MAIL_SERVER='smtp.gmail.com'
MAIL_PORT=587
MAIL_USE_TLS=True
MAIL_USERNAME=''
MAIL_PASSWORD=''
AWS_BUCKET_NAME = ''
AWS_REGION = ''
AWS_ACCESS_KEY_ID = ''
AWS_ACCESS_KEY_SECRET = ''- SQLAlchemy
- FlaskRestX
- FlaskJWTExtended
postgresql://usuario:password@ip_servidor:puerto/nombre_bd- Iniciar las migraciones (Ejecuta una sola vez)
flask db init- Crear una migración (Cuando se crea un modelo nuevo o se modifica uno anterior)
flask db migrate -m "Comentario"- Subir los cambios a nuestra BD
flask db upgrade- Ejecutar los seeders para poblar la BD
flask seed run