ri > ActiveModel::Errors

= ActiveModel::Errors < Object

------------------------------------------------------------------------
= Includes:
Enumerable (from /home/chedong/.local/share/rdoc)

------------------------------------------------------------------------
= Extended by:
Forwardable (from /home/chedong/.local/share/rdoc)

(from /home/chedong/.local/share/rdoc)
------------------------------------------------------------------------
== Active Model Errors

Provides error related functionalities you can include in your object
for handling error messages and interacting with Action View helpers.

A minimal implementation could be:

  class Person
    # Required dependency for ActiveModel::Errors
    extend ActiveModel::Naming

    def initialize
      @errors = ActiveModel::Errors.new(self)
    end

    attr_accessor :name
    attr_reader   :errors

    def validate!
      errors.add(:name, :blank, message: "cannot be nil") if name.nil?
    end

    # The following methods are needed to be minimally implemented

    def read_attribute_for_validation(attr)
      send(attr)
    end

    def self.human_attribute_name(attr, options = {})
      attr
    end

    def self.lookup_ancestors
      [self]
    end
  end

The last three methods are required in your object for Errors to be able
to generate error messages correctly and also handle multiple languages.
Of course, if you extend your object with ActiveModel::Translation you
will not need to implement the last two. Likewise, using
ActiveModel::Validations will handle the validation related methods for
you.

The above allows you to do:

  person = Person.new
  person.validate!            # => ["cannot be nil"]
  person.errors.full_messages # => ["name cannot be nil"]
  # etc..
------------------------------------------------------------------------
= Class methods:

  new

= Instance methods:

  []
  add
  added?
  as_json
  attribute_names
  delete
  details
  each
  errors
  full_message
  full_messages
  full_messages_for
  generate_message
  group_by_attribute
  has_key?
  import
  include?
  key?
  keys
  merge!
  messages
  messages_for
  objects
  of_kind?
  slice!
  to_a
  to_h
  to_hash
  to_xml
  values
  where

= Attributes:

  attr_reader errors
  attr_reader objects

ActiveModel::Errors
ActiveModel::Errors < Object Includes: Extended by:
Active Model Errors
Class methods: Instance methods: Attributes:

Generated by phpman v4.9.26-1-g511901d · Markdown · JSON · MCP Author: Che Dong Under GNU General Public License
2026-07-27 20:02 @216.73.216.199
CrawledBy Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)
Valid XHTML 1.0 Transitional!Valid CSS!

^_top_^