Rails3: Base#after_update has been deprecated

2019-04-29 07:51发布

I see the warning:

DEPRECATION WARNING: Base#after_update has been deprecated, please use Base.after_update :method instead. (called from <class:City> at /home/petrushka/webdev/my_app/app/models/city.rb:4)

What should I write instead of

  def after_update
     ....
  end

1条回答
Explosion°爆炸
2楼-- · 2019-04-29 08:09

You should write as follow:

after_update :your_custom_method # macro-style

at least you can pass a block instead of a method:

after_update do |model| 
  model.name = model.name.capitalize unless model.name.blank?
end

more info here: http://guides.rails.info/active_record_validations_callbacks.html (choose rails edge documentation)

查看更多
登录 后发表回答