我正在阅读Rails 3的Rails指南,他们使用这种方法:
cattr_accessor :attribute
这是什么方法?是Rails方法吗?我从没看过
最佳答案
这是一个 rails 的东西。基本上类似于attr_ *方法,但用于类级别。您不会想到的一件事是,因为它使用了后备@@变量,该值在类和所有实例之间共享。
class Foo
cattr_accessor :bar
end
# => [:bar]
foo1 = Foo.new
# => #<Foo:0x4874d90>
foo2 = Foo.new
# => #<Foo:0x4871d48>
foo1.bar = 'set from instance'
# => "set from instance"
foo2.bar
# => "set from instance"
Foo.bar
# => "set from instance"
关于ruby-on-rails - 在Rails中使用cattr_accessor吗?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/3411403/