Tratar de entender Rubí un poco mejor, me encontré con este código se navega por Internet:¿Qué hace el mapa (&: nombre) en este código de Ruby?
require 'rubygems'
require 'activeresource'
ActiveResource::Base.logger = Logger.new("#{File.dirname(__FILE__)}/events.log")
class Event < ActiveResource::Base
self.site = "http://localhost:3000"
end
events = Event.find(:all)
puts events.map(&:name)
e = Event.find(1)
e.price = 20.00
e.save
e = Event.create(:name => "Shortest event evar!",
:starts_at => 1.second.ago,
:capacity => 25,
:price => 10.00)
e.destroy
Lo que interesa particularmente es cómo lo hace events.map(&:name)
trabajo? Veo que los eventos son una matriz, y por lo tanto está invocando su método de mapa. Ahora mi pregunta es, ¿dónde está el bloque que se está transfiriendo al mapa creado? ¿Cuál es el símbolo: nombre en este contexto? Estoy tratando de entender cómo funciona.
Este es un duplicado exacto de * siete * preguntas diferentes. Y créame, Ruby no ha cambiado tanto en las últimas 3 semanas, por lo que probablemente las respuestas sean las mismas: http://StackOverflow.Com/questions/99318/, http://StackOverflow.Com/questions/1217088 /, http://StackOverflow.Com/questions/1792683/, http://StackOverflow.Com/questions/1961030/, http://StackOverflow.Com/questions/2096975/, http://StackOverflow.Com/questions/2211751 /, http://StackOverflow.Com/questions/2259775/. –