在這個問題上我已經得到了數據庫的兩個表:如何將新聞源中的項目排序爲last_active_at?
- 後(的has_many:評論)
- ActivityFeed(belongs_to的項目,多態)
- 評論(belongs_to的:後)
假設在Facebook上的組內發生的這些連續動作:
- 我們ER甲貼的狀態爲「狀態1」
- 用戶B發佈的狀態爲「狀態2」
,然後將這些2個職位中的每一個已經觸發FeedItem(活動)的創建的組。
現在,當用戶加載頁面時,提要活動按照created_at/updated_at進行排序。 供稿活動是一組多種對象(可以是帖子,照片,投票,文件...)。
如果在第二時刻用戶A評論的用戶B的柱,用於進給正確的順序現在應該:
- 「狀態2」
- 「狀態1」
那麼當用戶A對「狀態2」發表評論時會發生什麼?我是否必須找到相關的帖子(添加評論的地方)並更新帖子相關活動的時間戳?
我需要一些建議。謝謝!
UPDATE
class Comment < ActiveRecord:Base
belongs_to :post, touch: true
end
class Post < ActiveRecord:Base
has_many :comments
act_as_activity -> on_create will create a Activity representing this object
end
class Activity < ActiveRecord:Base
belongs_to :item, :polymorphic => true
belongs_to :parent, :polymorphic => true
belongs_to :user
end
因此飼料查詢將查找的活動表,因爲我可以有多種類型的飼料中的對象。和時間戳必須刷新此表時評論過的信息,這是因爲查詢在活動表完成:
SELECT * FROM Activity
ORDER BY updated_at
我在想什麼與此非常相似。我唯一關心的是性能os寫道。但是我應該在稍後改進。謝謝 – Luccas