我想允許我的網站上的用戶關注我的網站上的其他用戶和主題,但我是不確定如何將它們結合起來。想想Quora的是如何讓你可以跟蹤用戶,主題,問題,編輯等。我如何構建我的數據庫表以允許用戶關注多個表(人員,主題,問題等)
要跟隨我要保持它非常簡單的用戶:
user_id: int
followers_id: int
但是這僅僅是對用戶這麼好我想過怎樣:我
user_id: int
date: Date
following: int(could be topic_id or user_id)
following_type: text(topic or user)
現在有點不能確定這是否是要做到這一點,因爲我必須解析查詢無論是主題或用戶表類型的最佳方式(但它的好處是因爲所有的數據都在一張表中,我可以通過一次查詢快速獲得所有以下信息)。
這是最好的方法還是有更好的(更高效,可擴展等可能)方法來實現這一目標?我應該將每個追隨者類型分成不同的表嗎?我真的不確定我應該考慮什麼樣的設計。