是否可以在導軌上建立依賴於兩個表的連接的模型?這意味着對於要找到/更新/銷燬的模型記錄,需要將兩個數據庫表中的記錄連接在一起。該模型只是將兩個表格的所有列都包裹在一起,然後可以用於表單等等。這種方式當模型被創建/更新時,它只是一個表單變量哈希值,可以應用到模型中?兩個表作爲一個模型在導軌中使用
這是可能的Rails 2或3?
是否可以在導軌上建立依賴於兩個表的連接的模型?這意味着對於要找到/更新/銷燬的模型記錄,需要將兩個數據庫表中的記錄連接在一起。該模型只是將兩個表格的所有列都包裹在一起,然後可以用於表單等等。這種方式當模型被創建/更新時,它只是一個表單變量哈希值,可以應用到模型中?兩個表作爲一個模型在導軌中使用
這是可能的Rails 2或3?
就我所知,在Rails中無法完全按照您的要求來做,但您可以使用回調函數和has_one關聯有效地完成您嘗試使用第二個模型完成的任務,例如:
class Widget < ActiveRecord::Base
has_one :thingy
before_save :save_thingy_object
def save_thingy_object
self.thingy = Thingy.new({ :attr1 => 'some', :attr2 => 'thing' })
end
end
class Thingy < ActiveRecord::Base
belongs_to :widget
end
多表繼承在Ruby on Rails中目前沒有現成的解決方案。 雖然我會建議嘗試做一些與上述關係模型類似的工作,然後基本上濫用委託或手工代理來僞造關係屬性,使其看起來像模型的真實屬性。
在MySQL中,您可以嘗試使用視圖來加入這兩個表。但我不確定如果需要更新記錄以及Rails如何管理它,會發生什麼情況。