2013-02-25 15 views
1

您好,我目前正在計劃一個非常基本的rails應用程序的過程。我想創建一個小型的重量跟蹤應用程序,這將存儲重量模型中的重量(數字),也將有能力每週添加一個目標重量(數字),用戶將輸入他們的新體重,它將與目標權重和顯示完成率等等。我應該使用2個模型來存儲類似的數據,但用於rails的不同用途

現在我的問題是我會同時擁有一個權重模型和一個目標模型,還是應該是一個單一的重量模型與一些額外的元信息來設置權重作爲目標?我會承認我非常喜歡滑雪板,但我可能完全錯誤。

回答

2

這是一個非常主觀的答案,但我會分開他們有兩個原因。

  1. 更多模塊化。例如,您可能需要在Weight模型上進行一些模型驗證,但不需要目標模型。在這種情況下,將它們製作成兩種不同的模型比將它們合併成一個模型更容易。

  2. 模型協會。您可能需要在將來創建模型關聯。

0

體重甚至不會成爲我的榜樣,體重將是用戶的一個參數,就像goal_weight一樣。之後您可以實施方法weight_over_goal_weight?,以檢查權重是否超過或等於goal_weight。

+0

我認爲「體重跟蹤」意味着隨着時間的推移會產生許多「權重」和「目標」。所以把它們作爲屬性就不能很好地滿足這個要求。 – 2013-02-25 20:19:34

+1

也許我不明白應用程序的整個概念。其實,重新閱讀它可能會發現用戶實際上會有很多權重。這可能是我的不好,是的。如果是這樣的話,我可能會把它們分成兩部分。 – 2013-02-25 20:23:39

+0

我個人更喜歡爲'用戶'設置至少2個表格:** 1。**登錄/授權內容(用戶名,密碼,電子郵件,上次登錄時間戳等)。 ** 2。**個人數據對於餐桌關係不重要(真實姓名,生日,即時通訊等)。然後,如果使用多對多關係進行映射,那麼可能需要第三個權限表。但是,如果這些是簡單的角色,他們會使用登錄憑證進入表** 1 **。 ...在問題作者的情況下,我會爲權重條目選擇一個單獨的表(特別是如果這是多對一的關係)。 – 2013-02-26 11:03:24

相關問題