多態協會(這裏:評論)如何與不同類型的作者關聯?不同'作者'模型導軌中的多態關聯
從開始...
class Comment < ActiveRecord::Base
belongs_to :commentable, :polymorphic => :true
end
...我需要有一個筆者從模型是主機,ID 5和用戶,2另一個。
怎麼可能路徑的助手模樣......
<%= link_to comment.author.name, user_path(comment.author) %>
...當 「user_path」 或 「host_path」 是動態的,根據筆者的模型?
編輯***
有活動,地點等,可以有意見,像這樣:
has_many :comments, :as => :commentable
與多態性評論模式,我想補充的ID和類型指發表評論的作者:
create_table "comments", :force => true do |t|
t.text "content"
t.integer "commentable_id"
t.string "commentable_type"
t.integer "author_id"
t.string "author_type"
end
一個Events頁面顯示註釋,並且點擊一個作者姓名應該帶我到用戶(5)或AnotherModel(2),取決於誰寫了評論。
我想知道每個人如何處理這種情況。我應該考慮添加第二個多態「中間層」,比如「profile」,它可以包含子類「用戶」,「主機」等等?
EDIT 2
由於只有一個用戶模式將使生活更容易在這裏很明顯,但不能因其他原因來完成。一般來說,我很感興趣的是如何組織好。
謝謝你,你的第一個解決方案將需要'belongs_to的:author',我想?只有沒有作者模式。所以使用'belongs_to:author,:class =>「User」'會啓用它。但是,再次,我不能將評論與特定作者模型(需要主機,用戶...)聯繫起來。 – David
所以我可以這樣理解:用戶和主機都可以在作爲作者的用戶和主機上創建評論?然後你的評論需要一個多態的作者,就像你對可評論的評論一樣。 – emrass
謝謝,需要在我的腦中證實:通過=>其他用戶:) – David