我使用on Rails的3.0.9 Ruby和我想从ActiveRecord::Base
继承我的类\模型初始化一些attr_accessor
属性值。也就是说,
...我的模块中我有:
class User < ActiveRecord::Base
attr_accessor :attribute_name1,
:attribute_name2,
:attribute_name3,
...
end
和我想设置为true
所有attr_accessor
属性值。 我该怎么做?
请注意:当然,我想解决上述问题,以接近“àla Ruby on Rails Way”。我知道after_initialize
回调,但通过使用该方法,我应该重复每个attribute_name<N>
声明,我希望在该声明中将该值设置为true
(...并且这是而不是 DRY - 不要重复自己) 。也许有更好的方法来实现这一点。 当你声明这些属性时,有没有办法设置attr_accessor
属性值“实时”?也就是说,我希望立即声明并设置attr_accessor
属性!
是有名字(1,2 ...)背后真正的逻辑是什么? – apneadiving
@apneadiving - 是的,当然。 – Backo