クエリのドキュメントを読みましたが、クエリからテーブル名を取得する方法があるかどうかはどこにもわかりません。たとえば、ある場合は、から戻るq = query(Users)
ことができますか?Users
q
1250 次
1 に答える
4
あなたのようなイベントの単純なクエリには、関連している場合に備えて、他のテーブルとユーザーも含まれる可能性があることに注意してください。したがって、それを繰り返す必要があります。
以下は、必要なことを行う必要があります.selectable.locate_all_froms()
。
for t in query.selectable.locate_all_froms():
print repr(t)
print "table name: %s " % t.name
そのような結果になります:
>>>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
これは、Mapped オブジェクトからのクエリ ビルドと、Table オブジェクトからのクエリ ビルドで機能するはずです。
于 2013-01-22T18:50:29.143 に答える