J'ai un problème avec la séparation des tables avec des relations dans différents fichiers. Je veux que les tables ci-dessous soient dans trois fichiers distincts et pour importer TableA dans une page tierce, mais je ne peux pas gérer l'ordre de chargement.SQLAlchemy importer des tables avec des relations
Je reçois la plupart du temps l'erreur suivante.
sqlalchemy.exc.InvalidRequestError: lors de l'initialisation de mapper Mapper | TableA | tablea, l'expression 'TableB' n'a pas réussi à localiser un nom ("nom 'TableB' n'est pas défini"). S'il s'agit d'un nom de classe , pensez à ajouter cette relation() à la classe une fois que les deux classes dépendantes ont été définies.
class TableA(Base):
__tablename__ = "tablea"
id = Column(Integer, primary_key=True)
name = Column(String)
tableB = relationship("TableB", secondary = TableC.__table__)
class TableB(Base):
__tablename__ = "tableb"
id = Column(Integer, primary_key=True)
name = Column(String)
class TableC(Base):
__tablename__ = "tableab"
tableAId = Column("table_a_id", Integer, ForeignKey("TableA.id"), primary_key=True)
tableBId = Column("table_b_id", Integer, ForeignKey("TableB.id"), primary_key=True)
Merci pour les answear :) – bozhidarc
Devez-vous importer la classe pour pouvoir l'utiliser dans une relation? –