Ruby中delegate的一些用法
classs Admin < activeRecord::Base delegate :firstname, :to => :user # 等价于 # firstname => user.firstname # delegate :firstname, :to => :user, :prefix => true # 等价于 # user_firstname => user.firstname # delegate :firstname, :to => :user, :allow_nil => true, :prefix => true # 等价于 # user_firstname => user.try(:firstname) # delegate :name, :to => "user.try(:editor)", :prefix => :editor # 等价于 # editor_name => user.try(:editor).name #注意空异常 # delegate :name, :to => "user.try(:editor)", :prefix => :editor, :allow_nil => true # 等价于 # editor_name => user.try(:editor).try(:name) end