Упрощенно, у меня есть следующая структура класса (в одном файле):
Base = declarative_base()
class Item(Base):
__tablename__ = 'item'
id = Column(BigInteger, primary_key=True)
# ... skip other attrs ...
class Auction(Base):
__tablename__ = 'auction'
id = Column(BigInteger, primary_key=True)
# ... skipped ...
item_id = Column('item', BigInteger, ForeignKey('item.id'))
item = relationship('Item', backref='auctions')
Я получаю следующую ошибку из этого:
sqlalchemy.exc.InvalidRequestError
InvalidRequestError: When initializing mapper Mapper|Auction|auction, expression
'Item' failed to locate a name ("name 'Item' is not defined"). If this is a
class name, consider adding this relationship() to the Auction class after
both dependent classes have been defined.
Я не уверен, какPython не может найти класс Item, так как даже при передаче класса вместо имени в виде строки я получаю ту же ошибку.Я изо всех сил пытался найти примеры того, как сделать простые отношения с SQLAlchemy, поэтому, если здесь что-то совершенно очевидно не так, я прошу прощения.