我知道類似的問題已經被問到,但是我真的很難理解SQLAlchemy中如何實現泛型字段。SQLAlchemy通用關係簡單示例
我有一個Permissions類/表,我想包含一個可以與任何模型類型相關的字段。
我已經看過的例子,這個博客帖子http://techspot.zzzeek.org/2007/05/29/polymorphic-associations-with-sqlalchemy/
是否有可能有沒有一個單獨的表的一般關係?只需存儲object_type和id?沿着這些線:
class Permission(AbstractBase):
user = relationship("User", backref=backref('permissions'))
permission_type = column(String())
object = #The object the permission applies to, could be any type.
我想只是一個非常簡單的例子,將不勝感激!
另外,值得注意的是我來自Django背景!
感謝
你是什麼意思「沒有另一張桌子」?你能更好地定義你的SQL模式的樣子嗎? –
對不起,我應該讓自己更清楚。通過沒有另一個表,我的意思是有一個單獨的表來存儲通用關係。 – Charlie
這是一箇舊的博客文章,其中包含較舊的模式,但第一個示例「rails如何使用它」也是django方法 - 它放棄使用傳統外鍵以避免需要額外的表。但爲什麼如此重要,不正確地構建您的模式只是爲了保存表? – zzzeek