Как мне изменить AcriveRecord с помеченного на сохранение, чтобы убедиться, что он не сохраняется из самой модели?
Учитывая, что я могу запустить метод с помощью ловушки в activerecord, например: before_save
для (гипотетического) примера:
before_save :ignore_new_delete_exisiting_if_blank(self.attribute)
def ignore_new_delete_exisiting_if_blank(attribute)
self.do_not_save_me! if attribute.blank?
#what is that magic "do_not_save_me" method?
#Is there such thing, or something to achieve the same thing?
end
Обновление
Мой конкретный вариант использования требует, чтобы не возникало ошибок, и чтобы другие модели сохранялись, даже если эта не будет сохранена. Я должен объяснить:
Я использую наследование модели, и у меня возникла проблема с выяснением, как разрешить сохранение родительской модели, но если экземпляры дочерней модели пустые (в определенных атрибутах не существует значений), они не должны сохраняться; тем не менее, родитель должен быть сохранен. Этот сценарий не позволяет мне использовать проверки на дочерней модели, так как это также блокирует сохранение родителя ...