2012-09-09 74 views
0

我正在構建一個使用twitter和facebook API的應用程序。Model Model共享模型架構/設計模式

我打算將每個推文或狀態存儲在它自己的模型中,可以致電模型TweetFb_Status。我打算創建一個更通用的模型,其中包含兩者的文本內容,我們稱之爲Statement

我應該如何設計這個?

驗收標準會是這樣的:

  • Statement.all返回記錄有兩個attribtues messageword_countmessageTweetFb_Status繼承,無論該語句表示的是什麼,而word_countStatement模型的唯一屬性。
+1

推文和狀態應該是多態的我猜 – apneadiving

+0

感謝@apneadiving,我在多態協會看到的是,它用於'職位'和'圖片'有很多'評論'。在這種情況下,'Tweet'或'Fb_Status'有一個與之關聯的'Statement'記錄。 – Dru

+0

是的,你說得對,我誤解了你的問題 – apneadiving

回答

1

既然你已經用Ruby on Rails標記了這個問題,我假設你想知道,爲了解決這個問題,Rails可能必須提供什麼。

只要使用Ruby,您當然可以使用類繼承來獲取您的對象的所需行爲。除此之外,Rails還提供單表繼承(STI),它將共享某些功能的所有模型映射到一個數據庫表。 Discussion of STI

STI有其侷限性,這就是爲什麼你可能不想使用它。相反,您可以將不同的模型映射到不同的數據庫表。這不是直接支持Rails,但這裏是一個discussion of multiple table inheritance (MTI)

+0

+1 @Stephan,我認爲這是我需要的。 *關閉學習MTI * – Dru