/ Python

Manejo de campos en SQLAlchemy

Hola!

Un problema común cuando se utiliza el ORM SQLAlchemy para Python es la declaración de campos, se hace desordenada y compleja de mantener. Para esto realicé un método (pieza de código) que sólo enviando los campos asociados te genera un arreglo de los campos del modelo. Revísalo!

#METHOD TO GET FIELDS FROM MODEL
def get_fields_sqlalch(self,cols,model):
return [model.__dict__[k] for k in cols]
#USE METHOD
fields = get_fields_sqlalch(['campo1','campo2'],ColaboradorModel)
#APPLY FIELDS TO QUERY
result = [o._asdict() for o in s.query(*fields)]