fwiw, I struggled with this a while back and then gave up. i ended up writing a few filter__xyz() functions that accept/return a query. in the def, I join needed tables and filter. instead of inspecting the query for tables, I just pass in some flags on how to act.
It's not pretty, but it works reliably and was fast to implement. my queries now look like: q = session.query(A).filter(A.id>10) q = filter__as_at(q) -- You received this message because you are subscribed to the Google Groups "sqlalchemy" group. To unsubscribe from this group and stop receiving emails from it, send an email to sqlalchemy+unsubscr...@googlegroups.com. To post to this group, send email to sqlalchemy@googlegroups.com. Visit this group at http://groups.google.com/group/sqlalchemy. For more options, visit https://groups.google.com/d/optout.