Определяет методы доступа к классу и экземпляру для атрибутов класса
class Person
cattr_accessor :hair_colors
end
Person.hair_colors = [:brown, :black, :blonde, :red]
Person.hair_colors # => [:brown, :black, :blonde, :red]
Person.new.hair_colors # => [:brown, :black, :blonde, :red]
Если подкласс изменяет значение, то это также изменит значение для родительского класса. Точно так же, если родительский класс изменяет значение, это также изменило бы значение подклассов.
class Male < Person
end
Male.hair_colors << :blue
Person.hair_colors # => [:brown, :black, :blonde, :red, :blue]
, но для Rails 4+ используйте аналогичный метод mattr_accessor, так как cattr_accessor устарел в rails 4