Tôi gặp vấn đề với việc tách bảng với các mối quan hệ trong các tệp khác nhau. Tôi muốn các bảng bên dưới nằm trong ba tệp riêng biệt và nhập TableA trong trang của bên thứ ba, nhưng tôi không thể quản lý thứ tự tải.SQLAlchemy nhập bảng với các mối quan hệ
Trong hầu hết thời gian tôi nhận được lỗi sau.
sqlalchemy.exc.InvalidRequestError: Khi khởi tạo Mapper Mapper | TableA | tablea, biểu thức 'TableB' không tìm được tên ("name 'TableB' không được định nghĩa"). Nếu đây là tên lớp , hãy xem xét thêm mối quan hệ này() vào lớp sau khi cả hai lớp phụ thuộc đã được xác định.
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)
Cảm ơn bạn đã trả lời :) – bozhidarc
Bạn có phải nhập lớp học để có thể sử dụng nó trong mối quan hệ không? –