Module: Clubhouse::Concerns::Models::AttributeValidatable::ClassMethods

Defined in:
lib/clubhouse/concerns/models/attribute_validatable.rb

Instance Method Summary collapse

Instance Method Details

#validate_attributes!(attributes) ⇒ Object

Raises:

  • (ActiveRecord::RecordInvalid)


8
9
10
11
12
13
14
15
16
17
18
19
# File 'lib/clubhouse/concerns/models/attribute_validatable.rb', line 8

def validate_attributes!(attributes)
  record = new(attributes)

  record.validate

  ignorable = record.errors.keys - attributes.keys
  ignorable.each { |attribute| record.errors.delete(attribute) }

  raise ActiveRecord::RecordInvalid.new(record) unless record.errors.empty?

  true
end