= 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
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)