using 5.5
from sqlalchemy import create_engine, Table, Column,
ForeignKeyConstraint, MetaData, and_, String, Integer, ForeignKey
from sqlalchemy.orm import relation, sessionmaker, synonym, join
from sqlalchemy.ext.declarative import declarative_base
engine = create_engine('sqlite:///:memory:')
Base = declarative_base(bind=engine)
class User(Base):
__tablename__ = 'user'
user_id = Column('user_id', Integer, primary_key=True)
boston_addresses = relation('Address',
primaryjoin = and_
('User.user_id==Address.user_id',
'Address.city=="Boston"'),
foreign_keys = ['Address.user_id'])
class Address(Base):
__tablename__ = 'address'
user_id = Column('user_id', Integer, ForeignKey(User.user_id),
primary_key=True)
seq = Column('seq', Integer, primary_key=True)
city = Column('city', String)
session = sessionmaker()()
session.query(User)
gives:
sqlalchemy.exc.ArgumentError: Could not determine relation direction
for primaryjoin condition 'User.user_id==Address.user_id AND
Address.city=="Boston"', on relation User.boston_addresses. Do the
columns in 'foreign_keys' represent only the 'foreign' columns in this
join condition ?
Thanks
--~--~---------~--~----~------------~-------~--~----~
You received this message because you are subscribed to the Google Groups
"sqlalchemy" group.
To post to this group, send email to [email protected]
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
-~----------~----~----~----~------~----~------~--~---