Rails gem - 早期帖子的公共活动

时间:2015-09-30 20:05:15

标签: ruby ruby-on-rails-3 ruby-on-rails-4 public-activity

宝石无法识别在添加宝石之前创建的早期帖子。 它只是在创建新帖子时才开始工作。那是为什么?

而且,如何让public_activity

涵盖这些早期帖子

感谢。
根据作者网站设置Gem。

1 个答案:

答案 0 :(得分:1)

您已使用create_activity方法手动创建旧活动。我为此创建了一个rake任务。

task public_activity_migration: :environment do
  User.find_each do |user|
    [:comments, :friends].each do |relation|
      user.send(relation).find_each do |obj|
        obj.create_activity :create, owner: user, created_at: obj.created_at
        print "."
      end
    end
  end
end

上面的代码将为评论和好友模型创建活动。如果您未使用strong params,则还需要允许在created_at模型上设置PublicActivity::Activity属性。这可以通过在运行任务之前添加以下代码来完成。

class PublicActivity::Activity
  attr_accessible :created_at
end