我有一個var引用另一個模型。軌道上的has_may關係是必要的還是belongs_to足夠了?
User -> Profile
當我生成我用了引用 功能,因此它已經產生了相應的遷移
....
t.references :user
....
我的問題的剖面模型是我必須添加的用戶模型有關係嗎?
has_one :Profile
我有一個var引用另一個模型。軌道上的has_may關係是必要的還是belongs_to足夠了?
User -> Profile
當我生成我用了引用 功能,因此它已經產生了相應的遷移
....
t.references :user
....
我的問題的剖面模型是我必須添加的用戶模型有關係嗎?
has_one :Profile
是的,你需要兩種模式的代碼和你提到的遷移。
class User < AR
has_one :profile
end
class Profile < AR
belongs_to :user
end
否則它不會更新外部記錄? – Petran
否則協會將無法正常工作,不會說外國記錄:) –
HAS_ONE和belongs_to的只是方法,它增加了一些更多的方法模型。這意味着,您可以在一個模型上定義belongs_to,在另一個模型上不定義has_one。唯一的問題是你可以調用profile.user,但沒有user.profile。
這是絕對給你你想要的方式來定義,哪些是你不需要的東西。如果你永遠不想讓任何人打電話給profile.user,但想要user.profile只需撥打has_one :profile
即可。一般來說,這些方法除了使用相同的外鍵列之外不分享任何內容。
然而值得一提的,這是平時宜申報反向關聯 - 它是不需要的東西,雖然工作。
你的關係必須是小寫,':profile',沒有':Profile'。 – meagar