20
因此,有幾個問題和答案涉及這個問題,但我無法完全調和它們與我試圖實現的內容。SQLALchemy多態模型的多對多模型關係配置
我有一組模型是自我指涉和繼承。這是基本設計。
class BaseUser(db.Model):
id = db.Column(db.Integer, primary_key=True, nullable=False)
org = db.Column(db.Boolean, default=False, nullable=False)
# Shared Fields
__mapper_args__ = {
'polymorphic_on': org,
}
class Customer(BaseUser):
# Customer Fields
__mapper_args__ = {
'polymorphic_identity': 0
}
class Organization(BaseUser):
# Organization Fields
__mapper_args__ = {
'polymorphic_identity': 1
}
class CustomerOrganization(db.Model):
user_id = db.Column(db.ForeignKey('customer.id', ondelete=CASCADE, onupdate=CASCADE), primary_key=True, nullable=False)
org_id = db.Column(db.ForeignKey('customer.id', ondelete=CASCADE, onupdate=CASCADE), primary_key=True, nullable=False)
我已經嘗試了幾種不同的方法來創建一個「單位啓用」,並在這些類型的「成員」的關係。有關如何定義relationsihp()
屬性的任何建議?
1如前所述單個多態表保存兩個類,這裏的多對多關係表使用back-ref作爲集合屬性公開,我認爲它是標準的 – jayprich