Rails Symbol to Proc
- def to_proc
- Proc.new { |*args| args.shift.__send__(self, *args) }
- end
&符号用在symbol前面将调用to_proc方法,而to_proc里返回一个Proc对象,内部为调用symbol指定的方法
如
- people.map { |p| p.name }
- 等价于
- people.map(&:name)
即,&:name实际上调用了每个people对象的name方法,这样对对象的任意public方法我们都可以使用&+symbol来调用
- ids=gyms.map(&:id)
将 gym的id字段映射为一个id的数组
posted on 2013-03-20 11:29 leonworld2011 阅读(189) 评论(0) 收藏 举报
浙公网安备 33010602011771号