Привет, у меня простой вопрос - у меня есть 2 таблицы (адреса и пользователи - у пользователя один адрес, многие пользователи могут жить по одному и тому же адресу) ... Я создал отображение sqlalchemy так: когда я получаю сеанси пытаюсь запросить что-то вроде
class Person(object):
'''
classdocs
'''
idPerson = Column("idPerson", Integer, primary_key = True)
name = Column("name", String)
surname = Column("surname", String)
idAddress = Column("idAddress", Integer, ForeignKey("pAddress.idAddress"))
idState = Column("idState", Integer, ForeignKey("pState.idState"))
Address = relationship(Address, primaryjoin=idAddress==Address.idAddress)
class Address(object):
'''
Class to represent table address object
'''
idAddress = Column("idAddress", Integer, primary_key=True)
street = Column("street", String)
number = Column("number", Integer)
postcode = Column("postcode", Integer)
country = Column("country", String)
residents = relationship("Person",order_by="desc(Person.surname, Person.name)", primaryjoin="idAddress=Person.idPerson")
self.tablePerson = sqlalchemy.Table("pPerson", self.metadata, autoload=True)
sqlalchemy.orm.mapper(Person, self.tablePerson)
self.tableAddress = sqlalchemy.Table("pAddress", self.metadata, autoload=True)
sqlalchemy.orm.mapper(Address, self.tableAddress)
myaddress = session.query(Address).get(1);
print myaddress.residents[1].name
=> Я получаю объект TypeError: RelationshipProperty не поддерживает индексирование
Я понимаю, что жители есть, чтобы определить отношения, но как, черт возьми, я могуполучить список жителей, которым присвоен данный адрес ?!Спасибо