是否可以在创建模型对象期间拥有一个仅可批量分配的属性?
例如,username
属性在创建对象时应该是可批量分配的,但在此之后不应该是可分配的(它应该是只读的)。
答案 0 :(得分:6)
这是attr_readonly
的作用:
class User < ActiveRecord::Base
attr_readonly :username
end
u = User.create(:username => 'dude')
u.username # => 'dude'
u.update_attributes(:username => 'dudette')
u.reload.username # => 'dude'