2012-11-04 33 views
1

因此,找到快速答案令人驚訝地很難。我在一家純粹的控制檯應用程序使用ActiveRecord,我有我的課設置像這樣:ActiveRecord如何將鏈接記錄在一起?

class Owner < ActiveRecord::Base 
has_many :profiles 
end 

class Profile < ActiveRecord::Base 
has_many :lines 
belongs_to :owner 
end 

class Line < ActiveRecord::Base 
belongs_to :profiles 
end 

現在通常我會做這樣的事情..

Profile.create(:thing => "thing", :otherthing => "otherthing") 

如何AR知道將此配置文件的實例鏈接到所有者?那麼數據庫中的特定所有者呢?我如何告訴它?我將如何一次完成所有的鏈接? (線,到配置文件,所有者)?

回答

3

閱讀以瞭解基本知識。 http://guides.rubyonrails.org/association_basics.html

+1

這是無益的。假設我正在創建一條線,一個配置文件和一個所有者。通過指南判斷,我會做類似Line.Profiles.Owners.create的事情?如果這些表的列名稱相同,會怎麼樣? –

+0

指南的哪一部分說明了這一點?我建議你真正從基礎知識入手,感受一下Rails的ActiveRecord。但我會盡力回答你的問題。如果你想一次創建不同的模型,那麼簡單地執行'Line.create!(params [:line])'和'Owners.create!'。但是,如果您正在考慮關聯不同的模型,例如:@profile = @ owner.profiles.create!(params [:profile])' –

+0

相關部分接近頂部,他們解釋如何在您的關係中建立關係數據庫類.. 通過這種改變,爲特定客戶創建新訂單更容易(等) –