Raised by save!and create!when the record is invalid. Use the recordmethod to retrieve the record which did not validate.

begin
  complex_operation_that_calls_save!_internally
rescue ActiveRecord::RecordInvalid => invalid
  puts invalid.record.errors
end
Methods
N
Attributes
[R] record
Class Public methods
new(record)
# File activerecord/lib/active_record/validations.rb, line 11
def initialize(record)
  @record = record
  errors = @record.errors.full_messages.join(I18n.t('support.array.words_connector', :default => ', '))
  super(I18n.t('activerecord.errors.messages.record_invalid', :errors => errors))
end