リモートで働くプログラマーの検索結果

リモ太がググったことの覚書

after_saveで項目の値が変わっていたかどうかを確認したい

saved_changeや(項目名)_previous_changeを使って変更を確認する

user = User.new
user.email = "test@example.com"
user.save
p user.email_previous_change
["", "test@example.com"]
class User < ApplicationRecord
  after_save :do_somothing_if_email_changed

  def do_somothing_if_email_changed
    if self.email_previous_change.uniq.length > 1
      # do something
    end
  end
end