Hi, I'm tryed to write my first application using SqlAlchemy. I'm using declarative style. I need to get the attributes of the columns of my table. This is an example of my very simple model-class:
class Country(base): __tablename__ = "bookings_countries" id = sqlalchemy.Column(sqlalchemy.Integer, primary_key=True) canceled = sqlalchemy.Column(sqlalchemy.Boolean, nullable=False, default=False) description = sqlalchemy.Column(Description) def __init__(self, canceled, description): self.canceled = canceled self.description = description def __repr__(self): return "<Country ('%s)>" % (self.description) I want to populate a wx grid using the name of the fields as labels of the columns. I found three different solutions of my problem, but none satisfeid me: a) using column_descriptions in query object. col = (model.Country.canceled, model.Country.description) q = self.parent.session.query(*col).order_by(model.Country.description) l = [column["name"] for column in q.column_descriptions] in this way, l contains exactly what I need, but I don't like because I must execute an useless query only for having informations about the structure of my table. Ok, it's not so big problem, but IMO is not a very good solution b) reflecting the table c) using inspector lib from sqlachemy.engine I don't like because I have to use directly the name of the table in the database... It sounds me better and logical to use my class Country... but I can't find the simple way for doing that... maybe it's very simple, but... Someone can help me? Thanks Gabriele -- http://mail.python.org/mailman/listinfo/python-list