after_destroy使用rails中的observer类显示unscoped值

时间:2017-08-10 08:55:47

标签: ruby-on-rails ruby ruby-on-rails-3 observer-pattern

我试图在observer类中使用after_destoy添加到活动取消值,但是没有值显示。如果预订被删除,则预订标记为已取消。 知道如何使用after_destroy将取消的值添加到活动中吗?

非常感谢。

这是我的观察员班:

 class BookingObserver < ActiveRecord::Observer
  def after_destroy(booking)
     Activity.add(booking.venue, booking.created_by, 
     Activity::BOOKING_CANCELLED, booking) unless booking.imported?
  end
  def after_create(booking)

   Activity.add(booking.venue, booking.created_by, 
   Activity::BOOKING_CREATED, booking) unless booking.imported?
  end
 def after_update(booking)
  Activity.add(booking.venue, booking.created_by, 
  Activity::BOOKING_UPDATED, booking) unless booking.imported?
 end
end

1 个答案:

答案 0 :(得分:0)

1-您可以参考gem acts_as_paranoid来处理这种情况。它很容易管理destroy(它会更新删除)和really_destroy(销毁预订)。

  1. 您创建方法取消并更新对象的已删除值,并使用该方法获取取消预订对象。