我需要關於如何爲我正在塗鴉的Rails 4應用程序構建模型的意見。架構不應該太難,但我已經圈了幾個小時,所以我會把它扔給社區。針對不同類型的數據構建Rails模型
我有一個叫做「簽入」has_many「字段」的模型。每個字段可以有許多值,可以是幾種數據類型之一,隨着時間的推移可能會增加,但對於初學者來說,只有float
和string
。一旦一個字段被添加到簽入中,其數據類型不能改變。
認爲對於減肥,其中有些人會想只weight
登錄簽入的。其他人可能想要登錄weight
,%bodyfat
。其他人可能會想其他指標或你在什麼樣的心情文本字段中的額外領域
所以我有這麼遠是:
class Checkin < ActiveRecord::Base
has_many :fields
class Field < ActiveRecord::Base
belongs_to :checkin
然後,我打算做
class DataFloat < ActiveRecord::Base
belongs_to :field
class DataString < ActiveRecord::Base
belongs_to :string
等
的模式是現在只是引用簡單。 DataFloat有一個浮子和DataString有一個字符串(如你所期望)
然後,我會使用類似ActiveRecord::Base.descendants
一個(按THIS)創建一個選擇框,讓你可以選擇是場什麼時候你將它添加到簽入。
我對所有這些MVC專家的問題了還有這是否是做到這一點的最好辦法。 DataFloat和DataString擴展的中心對象「Data」會更好嗎?有沒有第三種,我沒有想到的更好的方式?