다른 파일의 관계가있는 테이블을 분리하는 데 문제가 있습니다. 아래의 표를 세 개의 개별 파일로 가져오고 TableA을 타사 페이지로 가져 오려면로드 순서를 관리 할 수 없습니다.SQLAlchemy 관계가있는 테이블 가져 오기
대부분 다음과 같은 오류가 발생합니다.
sqlalchemy.exc.InvalidRequestError : 매퍼 Mapper | TableA | tablea를 초기화 할 때 'TableB'식이 이름을 찾지 못했습니다 ("name 'TableB'이 정의되지 않음). 이 이름이 클래스 인 경우, 두 개의 종속 클래스가 모두 정의 된 후이 관계를() 클래스에 추가하는 것을 고려하십시오.
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)
답 해주세요 : – bozhidarc
관계에서 사용할 수 있도록 수업을 가져와야합니까? –