Module: Crm::Helpers::Persistence::ClassMethods

Defined in:
lib/crm/helpers/persistence.rb

Instance Method Summary collapse

Instance Method Details

#create(attributes = {}) ⇒ Object



11
12
13
14
15
16
# File 'lib/crm/helpers/persistence.rb', line 11

def create(attributes = {})
  attributes = attributes.with_indifferent_access
  instance = new(attributes)
  instance.save! unless instance.invalid?
  instance
end

#create!(attributes = {}) ⇒ Object



18
19
20
21
22
23
24
25
# File 'lib/crm/helpers/persistence.rb', line 18

def create!(attributes = {})
  instance = create(attributes)
  if instance.invalid?
    raise Crm::Errors::InvalidValues.new('', instance.errors)
  end

  instance
end