On Jan 3, 2013, at 3:17 PM, sjo...@congressus.nl wrote: > In this MyQuery two things need to happen; A) check whether the queried table > has the certain company_id field and B) automatically implement the > additional filter to add the SomeHTTPSessionGlobal.company_id (which is based > on the sub-domain) > => Is by altering the get(), __ite__ and from_self() functions enough to > effect all queries? > => How to get the adjusted table and detect whether an company_id field > exists?
the vast majority of queries go through __iter__(), so that's probably all you need. from_self() and get() are not as common - though get() will be used for a many-to-one lazy load in most cases, if this class is the target of a many-to-one relationship(). If you're dealing with mapped classes, a simple enough check is hasattr(MyClass, 'company_id'). Within Query, calling _mapper_zero().class_ gives you this class, assuming the query is against a single full entity like query(MyClass). -- You received this message because you are subscribed to the Google Groups "sqlalchemy" group. To post to this group, send email to sqlalchemy@googlegroups.com. To unsubscribe from this group, send email to sqlalchemy+unsubscr...@googlegroups.com. For more options, visit this group at http://groups.google.com/group/sqlalchemy?hl=en.