2013-03-23 42 views
0

的多個foreignKeys我具有類似於此的類:SQLAlchemy的:相同類型

class Component(Base): 
    __tablename__ = 'components' 

    id = Column(Integer, primary_key=True) 
    . 
    . 
    . 
    . 
    alternate1_id = Column(Integer, foreignkey("components.id"), nullable=True) 
    alternate2_id = Column(Integer, foreignkey("components.id"), nullable=True) 
    alternate3_id = Column(Integer, foreignkey("components.id"), nullable=True) 

    def __init__(self, catalog_number, component_type, manufacturer_pn, description): 
      self.catalog_number = catalog_number 
      self.component_type = component_type 
      self.manufacturer_pn = manufacturer_pn 
      self.description = description 

    def __repr__(self): 
      return "<Component('%s', '%s', '%s', '%s')>" % (self.catalog_number, 
                  self.component_type, 

alternate1,2和3是可選字段指向當前實例的替代組件。

如何創建三個關係,每個關係指向每個id的?

+0

我建議創建一個鏈接表並避免使用可爲空的外鍵。 – 2013-03-23 23:24:26

+1

好的,謝謝。我會盡力做到這一點。 – 2013-03-24 04:00:19

回答