【问题标题】:How to show activity only to a specific user in Public activity gem如何在公共活动 gem 中仅向特定用户显示活动
【发布时间】:2015-10-13 17:38:12
【问题描述】:
我想做的是使用公共活动 gem 来构建一个通知系统,我遵循了这个 Railscast 并且一切正常。
我有一篇文章和一个评论模型,用户可以在其中评论彼此的文章,文章所属的用户将在他们的活动提要中收到通知,但这里的问题是活动页面显示所有用户的活动,但现在我只想向文章所属的特定人员显示活动。因此,如果用户单击活动按钮,他们将只会看到文章中发生的活动。
有什么办法可以做到吗?
【问题讨论】:
标签:
ruby-on-rails
activerecord
public-activity
【解决方案1】:
如果模型中设置了所有者,像这样
class Comment < ActiveRecord::Base
include PublicActivity::Model
tracked owner: Proc.new{ |controller, model| controller.current_user }
end
那么您可以使用常规的where 子句来获取数据。
PublicActivity::Activity.where("owner_id = ?", user.id)