Module: ActiveNode::Validations::ClassMethods

Defined in:
lib/active_node/validations.rb,
lib/active_node/validations/uniqueness.rb

Instance Method Summary collapse

Instance Method Details

#create(attributes = nil, &block) ⇒ Object

Initializes and saves an object in a single step.



38
39
40
41
42
43
44
45
46
47
# File 'lib/active_node/validations.rb', line 38

def create(attributes = nil, &block)
  if attributes.is_a?(Array)
    attributes.collect { |attr| create(attr, &block) }
  else
    object = new(attributes)
    yield(object) if block_given?
    object.save
    object
  end
end

#create!(attributes = nil, &block) ⇒ Object

Creates an object just like Base.create but calls save! instead of save so an exception is raised if the record is invalid.



51
52
53
54
55
56
57
58
59
60
# File 'lib/active_node/validations.rb', line 51

def create!(attributes = nil, &block)
  if attributes.is_a?(Array)
    attributes.collect { |attr| create!(attr, &block) }
  else
    object = new(attributes)
    yield(object) if block_given?
    object.save!
    object
  end
end

#validates_uniqueness_of(*attr_names) ⇒ Object



23
24
25
# File 'lib/active_node/validations/uniqueness.rb', line 23

def validates_uniqueness_of(*attr_names)
  validates_with UniquenessValidator, _merge_attributes(attr_names)
end