В Rails 3 есть чистый способ проверить, является ли родительский объект новой записью, но с помощью обратного вызова before_create дочернего объекта
class Parent
has_many :children
accepts_nested_attributes_for :children
end
class Child
before_create :on_before_create
def on_before_create
logger.debug self.parent.new_record?
logger.debug self.parent.id
logger.debug self.parent.id_was
end
end
Я хочу выполнить код в on_before_create, только если родитель не является новой записью
но в тот момент, когда создается дочерний элемент, родительская запись была вставлена в БД, и поэтому она имеет id, id и id_, оба возвращают одно и то же значение,
новая запись? фактически ничего не возвращает, обычно возвращает логическое значение
есть идеи?