semplificato, ho la seguente struttura di classe (in un unico file):SQLAlchemy non riesce a trovare un nome di classe
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')
ottengo il seguente errore da questo:
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.
io non sono Certo in che modo Python non riesce a trovare la classe Item, in quanto anche quando si passa la classe, anziché il nome come stringa, ottengo lo stesso errore. Ho faticato a trovare esempi su come fare relazioni semplici con SQLAlchemy, quindi se c'è qualcosa di abbastanza ovvio in questo caso, mi scuso.
Questa risposta potrebbe anche essere utile: http://stackoverflow.com/questions/7478403/sqlalchemy-classes-across-files –
Questa risposta potrebbe anche essere utile: http://stackoverflow.com/a/4235691/232794 – Sardathrion