On Nov 9, 2007, at 6:49 PM, [EMAIL PROTECTED] wrote:
> om sqlalchemy import * > from sqlalchemy.sql.util import ClauseAdapter > m = MetaData() > a=Table( 'a',m, > Column( 'id', Integer, primary_key=True), > Column( 'xxx_id', Integer, ForeignKey( 'a.id', name='adf', > use_alter=True ) ) > ) > > e = (a.c.id == a.c.xxx_id) > print e > > b = a.alias() > #print b.c.id == 0 > > r = ClauseAdapter( b, include= set([ a.c.id ]), > equivalents= { a.c.id: set([ a.c.id]) } > ).traverse( e) > print e > > ######### results > > #in r3726: (OK) > a.id = a.xxx_id > a_1.id = a.xxx_id > > #in r3727 - as well as in r3760: > a.id = a.xxx_id > a.id = a.xxx_id no, it works, it just clones in all cases: sql_util.ClauseAdapter( b, include= set([ a.c.id ]), equivalents= { a.c.id: set([ a.c.id]) } ).traverse( e) assert str(e) == "a_1.id = a.xxx_id" --~--~---------~--~----~------------~-------~--~----~ 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 -~----------~----~----~----~------~----~------~--~---