我必須實現以下需求:存儲「頁面」,它是「修訂」。像:SQLAlchemy數據庫設計修訂
class Page(Base):
__tablename__ = 'Page'
page_id = Column(Integer, primary_key=True)
class Revision(Base):
__tablename__ = 'Revision'
revision_id = Column(Integer, primary_key=True, autoincrement=True)
name = Column(String(32))
content = Column(String(32))
page_id = Column(Integer, ForeignKey('Page.page_id'))
page = relationship('Page', uselist=False, backref='revisions')
我希望能夠得到頁面,它的內容透明的喜歡:
page = session.query(Page).filter(Page.page_id == 42).one()
page.name
page.content
我看SQLAlchemy inheritance doc,但我不知道如果我不能做到這一點與繼承。
是否有可能做這樣的事情?怎麼樣 ?
我會考慮「類型2數據倉庫」。基本保持有效的開始日期和有效的結束日期,最新的有效結束日期爲空。 – reptilicus