Hi! When trying to remove element from association_proxy exception occure. Here is code example:
################## CODE EXAMPLE ######################### from sqlalchemy import * from sqlalchemy.ext.declarative import declarative_base, DeclarativeMeta from sqlalchemy.ext.associationproxy import association_proxy from sqlalchemy.orm import scoped_session, sessionmaker, relation, backref engine = create_engine('sqlite://') meta = MetaData() meta.bind = engine class Base(declarative_base(metadata=meta)): _decl_class_registry = {} def __init__(self, *args, **kwargs): for key, val in kwargs.iteritems(): self.__setattr__(key, val) class Client(Base): __tablename__ = 'client' id = Column('id', Integer, primary_key=True) name = Column('name', String(50)) groups = association_proxy('client_group', 'group', creator=lambda x: ClientGroup(client=x)) class Group(Base): __tablename__ = 'group' id = Column('id', Integer, primary_key=True) name = Column('name', String(50)) clients = association_proxy('client_group', 'client', creator=lambda x: GroupClient(client=x)) class GroupClient(Base): __tablename__ = 'clientgroup' client_id = Column('client_id', Integer, ForeignKey('client.id'), primary_key = True) group_id = Column('group_id', Integer, ForeignKey('group.id'), primary_key = True) client = relation(Client, backref = backref('client_group')) group = relation(Group, backref = backref('client_group')) meta.create_all() session = scoped_session(sessionmaker(bind=engine)) clnt = Client(name='test') session.add(clnt) grp = Group(name='tg') session.add(grp) grp.clients.append(clnt) #session.flush() #grp.clients.remove(clnt) clnt.groups.remove(grp) session.flush() ######################################################### -- You received this message because you are subscribed to the Google Groups "sqlalchemy" group. To post to this group, send email to sqlalch...@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.