#Flask
1 messages · Page 1 of 1 (latest)
Me imagino que lo que te preocupa de acoplamiento va algo asi:
@router.get("/users")
def get_users():
db = SessionLocal() # acoplado
repo = UserRepository(db) # acoplado
service = UserService(repo) # acoplado
return service.get_all()
Y lo que quieres saber es como lo desacoplas, verdad?
Exactamente
Entonces si lo mas elegante para Flask es hacer un Container (inyeccion de dependencias)
Ahora acá viene otra pregunta
El container no importa si este si va acoplado a estos modulos, correcto?
tambien mi pregunta es si esto seria una buena practica, las importaciones
No importa, ese es un acoplamiento aceptado
Los imports los puedes hacer mas limpios si los "pre-registras" en el __init__ de tus modulos
y unicamente con una linea importar todos los modulos
o dices de simplemente importar
# app/repositories/__init__.py
from .sale_repo import SaleRepository
from .store_repo import StoreRepository
# app/main.py
from app.repositories import (
SaleRepository, StoreRepository)
el paquete?
ok ok, entiendo
Bueno esa era mi duda porque no terminaba de aceptar si estaba haciendo lo correcto. Muchas gracias!
para el otro tema que tienes de inyecciones busca el paquete de Flask-Injection
para aplicar las inyecciones en el repo y el service?
si