/Python-API-Rest-Template

Python API-Rest Template with Flask

Primary LanguagePythonMIT LicenseMIT

Python-API-Rest-Template

Python Flask Flask-SQLAlchemy TravisCI Open Source Love

1. Estructura y Flujo

└───api
    ├───controllers
    ├───models
    ├───middlewares
    ├───repository
    ├───routes
└───test

flow diagram

1.1. Models

Representa el modelo de datos, (por ejemplo un usuario).

1.2. Repository

Se encargan de proporcionar los métodos de acceso a base de datos para trabajar con los modelos (Entidades).

1.3. Middlewares

Son los componentes encargados de comprobar si se debe o no seguir con la petición. Por ejemplo autorización o roles.

1.4. Controllers

Los controladores son los encargados de realizar las operaciones requeridas por la petición definida en la ruta.


2. Ejecutar

2.1. Variables de entorno

Mediante las variables de entorno se pueden cambiar tanto la Base de datos como el modo de ejecución. Nombres:

SECRET : String con el que se codifica el JWT

Para ejecutar la API-Rest en modo de desarrollo o testeo se deben ejecutar las siguientes instrucciones:

virtualenv venv
.\venv\Scripts\activate
pip install -r requirements.txt
python server.py dev

2. Ejecutar con Docker

  1. Build
docker build . -t api-rest:latest
  1. Run
docker run api-rest

3. Ejecutar tests

python server.py test