Module: ErrorProne::Model

Defined in:
lib/error_prone.rb

Overview

Mixed in to objects you wish to validate.

Examples:


class FakeModel < Struct.new(:name)
  include ErrorProne::Model
end

model = FakeModel.new
model.valid?            # true
model.add_error(:name, :too_cool)
model.valid?            # false
model.errors_for(:name) # [:too_cool]

Instance Method Summary collapse

Instance Method Details

#add_error(field, error) ⇒ self

Returns The model itself.

Parameters:

  • field (Symbol)

    Identifies which field to add an error to

  • error (Symbol)

    Identifies the type of error that occured

Returns:

  • (self)

    The model itself



34
35
36
37
# File 'lib/error_prone.rb', line 34

def add_error(field, error)
  errors.add(field, error)
  self
end

#errorsErrorProne::Errors

Returns:



27
28
29
# File 'lib/error_prone.rb', line 27

def errors
  @errors ||= Errors.new
end

#errors_for(field) ⇒ Array

Returns the errors for the given field.

Parameters:

  • field (Symbol)

    The field to find errors for

Returns:

  • (Array)

    the errors for the given field



22
23
24
# File 'lib/error_prone.rb', line 22

def errors_for(field)
  errors.for(field)
end

#valid?Boolean

Returns false if errors had been added. True if no errors.

Returns:

  • (Boolean)

    false if errors had been added. True if no errors.



40
41
42
# File 'lib/error_prone.rb', line 40

def valid?
  errors.empty?
end