使属性仅在创建期间可分配
是否可以在创建模型对象期间具有仅可批量分配的属性?
例如, username
属性在创建对象时应该是可批量分配的,但在此之后不应该是可分配的(它应该是只读的)。
这就是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'