내가 railscasts more virtual attributes episode을보고 있었다. 그 에피소드에서, 라이언은 내가 이해할 수없는지도 방법 구문을 사용했습니다. 누군가 설명해 주시겠습니까?
tags.map(&:name).join(' ')
tags는 name 속성이있는 Tag Model의 객체입니다. 나는 이것의 의미를 이해할 수있다 (나는 그렇게 생각한다 :)). 모든 태그 객체의 이름 속성은 배열로 검색되고 ''을 기반으로 조인됩니다. 그러나 단지 tags.map{|tag| tag.name }
를 호출하는 것과 같습니다 및 tags.map(:name.to_proc)
것이 속기의 &:name
감사
BTW : & : name 구문은 Ruby> = 1.9 또는 ActiveSupport에서만 작동합니다. –
@ 사이먼, 1.8.7에도 나와 있습니다. – idlefingers
@ 마크, 맞습니다. 1.8.7 코어에 있음 - http://www.ruby-doc.org/core-1.8.7/classes/Symbol.html#M000386 – idlefingers