我认为这个问题(如何在ruby中进行attr_accessor_with_default?)回答了我的问题,但我没有使用ActiveRecord,after_initialize依赖于它.
实现默认值的Ruby最佳实践是attr_accessor什么?是否这是最接近于它的文档?我应该停止使用,attr_accessor因为它是私人的吗?
Phr*_*ogz 26
class Foo
# class-level instance variable
# setting initial value (optional)
@class_var = 42
# making getter/setter methods on the class itself
class << self
attr_accessor :class_var
end
# instance-level variable getter/setter methods
attr_accessor :inst_var
def initialize
# setting initial value (optional)
@inst_var = 17
end
end
p Foo.class_var
#=> 42
Foo.class_var = 99
p Foo.class_var
#=> 99
f1 = Foo.new
f2 = Foo.new
f2.inst_var = 1
p [f1.inst_var, f2.inst_var]
#=> [17,1]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
18979 次 |
| 最近记录: |