I've read through the query docs and don't see anywhere if there is a way to get the tablename from a query-- e.g. if I have q = query(Users)
, can I get Users
back out from q
?
Please note that event simple query like yours may involve other table then Users too in case when they are related. So you'll need to iterate over it.
The following should do what you need .selectable.locate_all_froms()
:
for t in query.selectable.locate_all_froms():
print repr(t)
print "table name: %s " % t.name
Will result in something like that:
>>>Table('order', MetaData(bind=None), Column('id', Integer(), table=<order>, primary_key=True, nullable=False, default=Sequence('order_seq', metadata=MetaData(bind=None))), Column('name', String(length=127), table=<order>), schema=None)
>>>table name: order
This should work for query build from Mapped object and also for query build from Table object.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With