Rails 3 - 获取Lates Observer Record

时间:2010-10-09 05:46:27

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

这是我的Rails应用程序中的当前流程 1.用户使用AJAX并创建Photo记录(存储在DB中) 2.然后,观察者捕获此信息并将记录添加到审核日志

**这一切都没有页面刷新。我现在面临的挑战是,我需要让AJAX从观察者创建的AuditLog返回一个“新闻提要”项。它需要来自auditlog,因为我需要该记录的auditlog.id。

想法?感谢

1 个答案:

答案 0 :(得分:1)

假设您的模型如下:

class AuditLog < ActiveRecord::Base
  belongs_to :auditable, :polymorphic => true
end

class Photo < ActiveRecord::Base
  has_many :audit_logs, :as => :auditable
end

观察者回调类似于模型上过滤器之前和之后的常规回调。回调发生在与保存调用相同的执行块中。因此,您应该能够使用Photo模型上的关联访问AuditLog对象。

if photo.save
  audit_log = photo.audit_logs(:order => "id DESC").first
  # return the audit_log feed
else
  # error
end