practices how for example dummies best auth and python sqlite sqlalchemy instrumentation

python - how - sqlalchemy for dummies



Cómo descubrir propiedades de tabla del objeto mapeado SQLAlchemy (1)

Tengo una clase asignada con una tabla, en mi caso de manera declarativa, y quiero "descubrir" las propiedades de la tabla, columnas, nombres, relaciones, de esta clase:

engine = create_engine(''sqlite:///'' + databasePath, echo=True) # setting up root class for declarative declaration Base = declarative_base(bind=engine) class Ship(Base): __tablename__ = ''ships'' id = Column(Integer, primary_key=True) name = Column(String(255)) def __init__(self, name): self.name = name def __repr__(self): return "<Ship(''%s'')>" % (self.name)

Así que ahora mi objetivo es de la clase "Enviar" para obtener las columnas de la tabla y sus propiedades de otra pieza de código. Supongo que puedo manejarlo usando instrumentación, pero, ¿hay alguna manera provista por la API de SQLAlchemy?


La información que necesita puede obtener del objeto Table :

  • Ship.__table__.columns le proporcionará información de columnas
  • Ship.__table__.foreign_keys claves foráneas
  • Ship.__table__.constraints , Ship.__table__.indexes son otras propiedades que pueden resultarle útiles