Ruby on rails 3 活动记录观察者未在控制台/种子中激发

Ruby on rails 3 活动记录观察者未在控制台/种子中激发,ruby-on-rails-3,observer-pattern,Ruby On Rails 3,Observer Pattern,我已经安排了观察员来颁发模型更改的徽章。 它在我使用视图时有效,但在执行以下操作时似乎不会触发: 从控制台或种子文件创建(:user_id=>user.id,:file=>file) 有什么想法吗 class ExplorerObserver < ActiveRecord::Observer observe :photo def after_save(photo) user = photo.user Explorer.award_achievements_for(

我已经安排了观察员来颁发模型更改的徽章。 它在我使用视图时有效,但在执行以下操作时似乎不会触发: 从控制台或种子文件创建(:user_id=>user.id,:file=>file)

有什么想法吗

class ExplorerObserver < ActiveRecord::Observer
  observe :photo

  def after_save(photo)
    user = photo.user
    Explorer.award_achievements_for(user) unless photo.new_record?
  end

end
classexplorerobserver
您是否忘记将其放入
应用程序
类中的
配置/application.rb

config.active_record.observers = :photo_observer

我的错误,这是一个愚蠢的问题,但对于档案,以下是我的答案:

如果你有多个观察者,不要像那样放多行

config.active_record.observers = :popular_observer
config.active_record.observers = :explorer_observer
相反,我以前的代码用最后一个覆盖了观察者

config.active_record.observers = :popular_observer, :explorer_observer

不,我有:config.active\u record.observators=:explorer\u observator,这是因为规则在视图中起作用。