Check if a model was modified or created on before_save event
Asked Answered
P

1

6

I want to check if a model is being created in the before_save callback of Rails. I also want to check if it has been modified (when updating).

Thanks

Propagandist answered 26/12, 2011 at 19:8 Comment(0)
D
12

You can use new_record? to see if you have a brand new object and changed? to see if anything has changed:

before_save :pancakes

def pancakes
  if new_record?
    # Not in the database yet.
  elsif changed?
    # Already exists but it has unsaved changes.
  end
end
Dimorph answered 26/12, 2011 at 19:22 Comment(0)

© 2022 - 2024 — McMap. All rights reserved.