2011-01-22 1 views
1

User 모델과 many-to-many 관계가있는 Ledger 모델이 있습니다. SQLAlchemy가 데이터베이스 테이블을 올바르게 만들었으므로 올바른 매핑이 있다는 것을 확신합니다. 각 테이블에 새 레코드를 만들 수는 있지만이를 연관시키는 방법을 알 수는 없습니다. 어떻게해야합니까?Pylons에서 SQLAlchemy와 함께 assoc 레코드로 어떻게 만들 수 있습니까?


내 테이블 정의 :

user_table = sa.Table('user', meta.metadata, 
    sa.Column('id', types.Integer, 
     sa.Sequence('user_seq_id', optional=True), primary_key=True), 
    sa.Column('username', types.Unicode(255), nullable=False, unique=True), 
    sa.Column('password', types.Unicode(255), nullable=False), 
    sa.Column('salt', types.Unicode(255), nullable=False) 
    ) 
userledger_table = sa.Table('userledger', meta.metadata, 
    sa.Column('id', types.Integer, 
     sa.Sequence('user_seq_id', optional=True), primary_key=True), 
    sa.Column('user_id', types.Integer(), sa.ForeignKey('user.id')), 
    sa.Column('ledger_id', types.Integer(), sa.ForeignKey('ledger.id')), 
    ) 
ledger_table = sa.Table('ledger', meta.metadata, 
    sa.Column('id', types.Integer, 
     sa.Sequence('ledger_seq_id', optional=True), primary_key=True), 
    sa.Column('name', types.Unicode(255), nullable=False), 
    ) 

매핑 :

orm.mapper(User, user_table); 
orm.mapper(Ledger, ledger_table, properties={ 
    'users':orm.relation(User, secondary=userledger_table) 
    }) 

답변

관련 문제