我找遍了整個SQLAlchemy的教程和其他類似的問題,但我似乎努力讓該連接工作:如何在SQLAlchemy的
場景:我有模型代表的pages
表。頁面可以由用戶創建並由用戶編輯,但不一定是相同的。我Page
模型看起來像這樣(有刪節):
class Page(Base):
__tablename__ = 'pages'
id = Column(Integer, primary_key = True)
slug = Column(Text)
title = Column(Text)
direct_link = Column(Text)
body = Column(Text)
category_id = Column(Integer, ForeignKey('categories.id'))
published_on = Column(DateTime)
publishing_user_id = Column(Integer, ForeignKey('users.id'))
last_edit_on = Column(DateTime)
last_edit_user_id = Column(Integer, ForeignKey('users.id'))
# Define relationships
publish_user = relationship('User', backref = backref('pages', order_by = id), primaryjoin = "Page.publishing_user_id == User.id")
edit_user = relationship('User', primaryjoin = "Page.last_edit_user_id == User.id")
category = relationship('Category', backref = backref('pages', order_by = id))
我的用戶存儲在由User
模型所表示的用戶表。正如我所說的,我一直在尋找這個SQLAlchemy文檔,我試圖讓它看起來儘可能類似於他們的例子,但不是沒有用。任何幫助將不勝感激。
林不知道香港專業教育學院設置了正確的什麼我想要它做的文檔。我希望能夠從查詢中獲取頁面,並調用page.publish_user來獲取發佈用戶。我試過下面的建議,但仍然沒有運氣 – richzilla
你說它不工作,但你能更具體 - 一個錯誤,一個意外的返回值,是什麼?我沒有在您發佈的代碼中看到任何明顯的問題。 – FMc