我想設計一個評論系統,允許用戶通過評論發佈在其他用戶的頁面上。Rails協會 - 用戶有很多用戶通過評論
用戶將在他的頁面上發表評論,該頁面由另一個稱爲「評論者」的用戶發佈。
1)以下代碼是否合法/功能/體面設計?
2)可以重新命名爲「評論者」的用戶,還是非重命名的「用戶」,或者用戶的所有關聯名稱是否總是被重新命名爲語義?
3)是否有更好的方法來實現這個設計意圖(例如不通過:)來做一個has_many?
class User < ActiveRecord::Base
has_many :comments
has_many :users, through: :comments
has_many :commenters, through: :comments, class_name: 'User'
end
class Comment < ActiveRecord::Base
belongs_to :user
belongs_to :commenter, class_name: 'User'
end
注:
我想允許用戶對用戶的評論,同時也對其他型號(例如人物,名人)。所以我會認爲通過關聯需要在各種has_many中使用註釋表。
用戶已經通過評論許多評論 字符通過的意見有許多評論 名人有過評論
請標記您發現的答案爲接受的更有幫助。 –
我仍然期待看到與軌道的解決方案。我沒有時間去嘗試這個寶石或測試rails代碼。我有點不情願。現在標記爲 – ahnbizcad