Не могли бы вы подробно объяснить, что такое обратные вызовы :before_save и :before_create Ruby on Rails, и что они должны делать с проверкой Rails? Выполняется ли проверка после :before_save или :before_create?
Ruby on Rails Callback, какая разница между: before_save и: before_create?
Ответ 1
В операции создания под Rails перед операцией базы данных есть шесть обратных вызовов и два после. В порядке:
-  before_validation
-  before_validation_on_create
-  after_validation
-  after_validation_on_create
-  before_save
-  before_create
 ВСТАВКА БАЗА ДАННЫХ
-  after_create
-  after_save
Операции обновления имеют точно такой же набор, за исключением read update вместо create всюду (и  UPDATE вместо  INSERT).
Из этого вы можете видеть, что проверка выполняется перед обратными вызовами before_save и before_create.
 before_save происходит немного раньше before_create. Насколько мне известно, между ними ничего не происходит; но before_save также запускает операции обновления, а before_create будет запускаться только при создании.
Ответ 2
 before_save вызывается каждый раз, когда объект сохраняется. Итак, для новых и существующих объектов. (создать и обновить действие)
 before_create только до создания. Так что только для новых объектов (создать действие)
Ответ 3
 before_create vs before_save :on => :create
Иногда вы должны быть осторожны с порядком обратных вызовов
Подробнее см. здесь: http://pivotallabs.com/activerecord-callbacks-autosave-before-this-and-that-etc/
