我試圖在軌道中的相同類中創建兩個一對一的關係。將兩個對象鏈接到軌道活動記錄中的單個記錄
我加了兩列到我的類名爲鏈接
post_id1 post_id2
所以現在我希望能夠得到一個鏈接對象,並做
link.post1
link.post2
但我越來越困惑如何指定此
我認爲這是與
has_one :Post, => specify name so the references don't clash
我認爲這很容易,我只是新的鐵路。
我試圖在軌道中的相同類中創建兩個一對一的關係。將兩個對象鏈接到軌道活動記錄中的單個記錄
我加了兩列到我的類名爲鏈接
post_id1 post_id2
所以現在我希望能夠得到一個鏈接對象,並做
link.post1
link.post2
但我越來越困惑如何指定此
我認爲這是與
has_one :Post, => specify name so the references don't clash
我認爲這很容易,我只是新的鐵路。
在Link
類:
belongs_to :post_1, :class => "Post"
belongs_to :post_2, :class => "Post"
編輯:[改正belongs_to
]
您需要在鏈接表post1_id和post2_id和:
belongs_to :post1, class_name: "Post"
belongs_to :post2, class_name: "Post"
在Post模型,你可以使用has_one或has_many作爲反向引用。
UPDATE: 以下是此參考:choosing between belongs_to and has_one
其他回答幫我,但它也是這個,我專門找
:foreign_key => "post_id1"
所以最後一行是
belongs_to :post_1, :class => "Post", :foreign_key => "post_id1"
感謝您的幫助!
其他幾點讓我朝着正確的方向移動,但我也需要指定保存鍵的列 – 2013-04-30 00:09:29