Usando SQLAlchemy, estoy tratando de imprimir todos los atributos de cada modelo que tengo de una manera similar a:Cómo imprimir todas las columnas en SQLAlchemy ORM
SELECT * from table;
Sin embargo, me gustaría hacer algo con la información de la instancia de cada modelo a medida que lo obtengo. Hasta ahora el mejor que he sido capaz de llegar a es:
for m in session.query(model).all():
print [getattr(m, x.__str__().split('.')[1]) for x in model.__table__.columns]
# additional code
Y esto me dará lo que estoy buscando, pero es una manera bastante rotonda de conseguirlo. Yo tenía la esperanza de un atributo a lo largo de las líneas de:
m.attributes
# or
m.columns.values
Siento que estoy perdiendo algo y no hay una mejor manera de hacer esto. Estoy haciendo esto porque imprimiré todo en archivos .CSV, y no quiero tener que especificar las columnas/atributos que me interesan, lo quiero todo (hay muchas columnas en mucho de modelos a ser impresos).
El inspector parece ser lo que necesito, aplausos. – mrmagooey
Usando el ORM sqlalchemy de matraz, pude obtener los nombres de las columnas a través de lo siguiente: tablas_de_datos .__ tabla __. Columnas – simoes