class Class

Ruby on Rails 2.2.3

Since v2.2.3

Available in: v2.2.3 v2.3.18 v3.0.20 v3.1.12 v3.2.22.5 v4.0.13 v4.1.16 v4.2.9 v5.2.8.1 v6.0.6 v6.1.7.10 v7.0.10 v7.1.6 v7.2.3 v8.0.4 v8.1.2

Extends the class object with class and instance accessors for class attributes, just like the native attr* accessors for instance attributes.

class Person
  cattr_accessor :hair_colors
end

Person.hair_colors = [:brown, :black, :blonde, :red]

These class attributes behave something like the class inheritable accessors. But instead of copying the hash over at the time the subclass is first defined, the accessors simply delegate to their superclass unless they have been given a specific value. This stops the strange situation where values set after class definition don’t get applied to subclasses.

Inherits from

Object

Methods (defined here)

Methods (inherited)

From Object (32)
From ActionController::Caching (3)
From ActionController::Cookies (2)
From ActionController::Flash (1)
From ActionController::HttpAuthentication::Basic::ControllerMethods (3)
From ActionController::RecordIdentifier (5)
From ActionController::RequestForgeryProtection (8)
From ActionController::Rescue (7)
From ActionController::Streaming (2)
From ActionController::Translation (4)
From ActiveRecord::Callbacks (14)
From ActiveRecord::Dirty (4)
From ActiveRecord::Locking::Pessimistic (1)
From ActiveRecord::NamedScope (1)
From ActiveRecord::Serialization (5)
From ActiveRecord::Transactions (4)
From ActiveRecord::Validations (7)
From Benchmark (1)
From ActionController::Components::InstanceMethods (2)
From ActiveRecord::Locking::Optimistic::ClassMethods (7)
From ActiveRecord::NamedScope::ClassMethods (2)
From ActiveRecord::Serialization::ClassMethods (1)
From ActiveRecord::Validations::ClassMethods (13)
From ActiveSupport::Memoizable (1)

Type at least 2 characters to search.

↑↓ navigate · open · esc close