2010-09-08 73 views

回答

2

這完全取決於這些類別應該做什麼而不是做什麼。你可以簡單地定義一些你用來分類東西的constants。但是,是類別...

  1. 可能會有更改?你最終想添加更多嗎?
  2. 可編輯?你想改變他們的名字嗎?
  3. 嵌套?
  4. 應該有更多的屬性,而不僅僅是他們的ID?名稱,說明?

如果您對上述任何回答爲「是」,則需要將它們作爲數據存儲在數據庫中。這獨立於Cake,它只是一種理智的數據建模。對於Cake來說,這意味着您需要創建一個模型。評分也是一樣。

所以你必須在這些表:

  • 用戶
    • 的hasMany評級
  • 類別
    • 的hasMany內容
  • 內容
    • 屬於關聯類別
    • 的hasMany評分
  • 評分
    • 屬於關聯的用戶(多晶型)
    • 屬於關聯內容(多晶型)

您可能希望將用戶評分和內容評分分爲兩個表格,而不是使用組合的多態表格(這意味着您有一個額外的列可以跟蹤評分是針對用戶還是針對內容)。

+0

甜。 Thanks Deceze,那很完美。 – Anthony 2010-09-08 01:29:01

+0

另外值得注意的是,你可以真正利用Cake的緩存,在這樣的情況下,你不希望數據變化太大。開啓緩存後,您幾乎不會注意到應用中的性能差異。 – 2010-09-08 20:27:36