Как я регулирую сообщения от PublicActivity?

class Post < ActiveRecord::Base
    include PublicActivity::Model
      tracked owner: :user

Я использую гем PublicActivity для отслеживания действия "обновление" в модели Post. Проблема в том, что если пользователь нажимает "Обновить сообщение" 3 раза в минуту, я получаю 3 действия для одного и того же "обновленного сообщения". Есть ли способ сохранить активность только в диапазоне X-минут? Для предотвращения наводнения.

РЕДАКТИРОВАТЬ:

Может быть, запланированная работа по очистке дублированных данных?

2 ответа

Решение
activity = PublicActivity::Activity.where(trackable_id: post.id, owner_id: current_user.id).last
if activity?
  period = Time.zone.now - activity.created_at
  if period > 60              # or any time sec
    @post.create_activity     # your activity creation
  end
else
  @post.create_activity       # your activity creation
end

Я думаю, что вам нужно поэкспериментировать с опцией отключения отслеживания. Больше информации здесь

Другие вопросы по тегам