class Errorio::Error

Error object for errors collection

Attributes

attribute[R]
base[R]
options[R]
type[R]

Public Class Methods

new(base, attribute, type, options) click to toggle source
# File lib/errorio/error.rb, line 4
def initialize(base, attribute, type, options)
  @base = base
  @attribute = attribute
  @type = type
  @options = options.symbolize_keys
end

Public Instance Methods

full_message(attribute, message) click to toggle source

Returns a full message for a given attribute. person.errors.full_message(:name, 'is invalid') # => “Name is invalid”

# File lib/errorio/error.rb, line 22
def full_message(attribute, message)
  attr_name = attribute.to_s.tr('.', '_').humanize
  return "#{attr_name} #{message}" if @base.nil?

  attr_name = @base.class.human_attribute_name(attribute, default: attr_name)
  I18n.t(:"errors.format", default: '%{attribute} %{message}', attribute: attr_name, message: message)
end
message() click to toggle source
# File lib/errorio/error.rb, line 16
def message
  options[:message]
end