On Apr 20, 2007, at 11:14 PM, Paul Kippes wrote:
> > I had been using an order_by with the AssociationProxy since 0.3.4. > In 0.3.6, this has been broken or else no longer supported. Since > this is an extension, it has no unit tests (is this the norm?) > extensions do have unit tests in some cases, the association proxy was a real fast idea I had one day, and its also a pretty small set of code, so it hasnt acquired any as of yet. > The resulting SQL fails with "no such column: items.description" this error is not related to the association proxy and is because the "items" table is not used to load OrderItem objects, so the OrderItem eager loader leaves the column alone. there is a line in the 0.3.5 version and earlier that runs the "alias" step unconditionally on all the ORDER BY clauses attached to the statement and thats why it works there...but this was removed because it could affect elements which the user didnt intend to be lumped into the eager clause for that relationship. the appropriate way to set up this ordering is like: mapper(Order, orders, properties={ 'itemassociations':relation(OrderItem, cascade="all, delete- orphan", lazy=False, order_by=None) }) mapper(Item, items) mapper(OrderItem, orderitems, properties={ 'item':relation(Item, lazy=False, order_by=items.c.description) }) the "order_by=None" on itemassociations is so no ORDER BY clause is generated for that relationship, allowing the order by on the "item" relationship to take effect. --~--~---------~--~----~------------~-------~--~----~ 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 [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/sqlalchemy?hl=en -~----------~----~----~----~------~----~------~--~---