基于foreign_keys列表而不是单个foreign_key的一对多SQLAlchemy关系

时间:2018-07-20 14:26:56

标签: python sqlalchemy one-to-many

我想自动生成一个SQLAlchemy基类属性,该属性包含一个从外键派生的外模型列表,这些外键是在相关表的String属性(例如“ 123、124、125”)中串联的。我很清楚这不是在单个属性中存储多个外键的一种好习惯,但是由于它实际上是一个View而不是一个数据库表,该表在其字段中连接了相关的foreign_key,我想我可以在其中使用它我的程序。在这种情况下,性能并不是重要的标准。

示例:

foreign_ids | other_id

“ 123、124、125” | 126

class MyModelView(Base):
       __tablename__ = 'mytable'
       #conventional way of linking single foreign models to this instance
       single_id = Column('other_id', BigInteger(), ForeignKey(OtherModel.id))
       other = relationship(OtherModel, foreign_keys=[single_id])


       #intented way of linking multiple foreign models to this instance
       multi_ids = Column('foreign_ids', String())
       foreign_list= relationship(ForeignModel, foreign_keys=multi_ids.split(", "))

0 个答案:

没有答案