Определите, является ли объект ActiveRecord новым - PullRequest
206 голосов
/ 21 октября 2011

Как я могу проверить, является ли объект ActiveRecord новым или уже сохраненным?

Ответы [ 2 ]

336 голосов
/ 11 сентября 2013

Жизненный цикл объекта ActiveRecord:

1. новая запись

item = Item.new
item.new_record? #=> true

2. сохранялось

item.save
item.persisted? #=> true

3. изменен

item.name = "other"
item.changed? #=> true

4. 1019 * разрушен *

item.destroy
item.destroyed? #=> true
265 голосов
/ 21 октября 2011

#new_record? делает именно это:

object.new_record?
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...