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

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

Instance Method Summary collapse

Instance Method Details

#create(attributes = {}) ⇒ Object



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

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

#create!(attributes = {}) ⇒ Object

Raises:

  • (Crm::Errors::InvalidValues)


16
17
18
19
20
# File 'lib/crm/helpers/persistence.rb', line 16

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