我有以下模型:

class Actividad(Base):
    __tablename__ = "Actividad"

    codigo = Column(Integer, primary_key=True, unique=True)
    productos = relationship("Producto_Actividad")
    total = Column(Float)


它与“ productos”字段中的另一个模型(称为“ Producto”)具有多对多关系(通过关联表“ Producto_Actividad”)。

为了获取该模型对象的列,我使用了:

Actividad.__mapper__.column_attrs.keys()


或(“充当”模型的实例):

act.__table__.columns


不过,我得到以下结果:

['codigo', 'total']


为什么我没有在结果集中得到“ productos”字段?我需要在程序的另一部分中使用它。

最佳答案

为什么我没有在结果集中得到“ productos”字段?


因为在“ Actividad”表中没有表示“ productos”的列。该链接位于(单独的)关联表中,其中的行将使一个或多个“ Producto_codigo”值与一个或多个“ Actividad_codigo”值匹配。

10-06 09:23