2012-03-23 16 views

risposta

29

provare quanto segue:

ids = arr.map { |x| x[:id] } 
+0

Funziona !!! grazie mille Niklas !! – obi

+4

Come mai qualcosa come "arr.map (&: [: id])' non funziona? – Noz

+2

@Cycle: Diversi motivi: Prima ': [' non è un simbolo, perché '[' non è un identificatore valido. In secondo luogo, non si può usare il trucco '&' in congiunzione con gli argomenti del metodo, perché la sintassi precisa è' metodo (arg1, arg2, ..., & x) ', dove x è un'espressione che valuta un valore che ha un' metodo to_proc'. Viene chiamato quel metodo 'to_proc' e l'oggetto' Proc' risultante viene passato come parametro di blocco a 'method'. –

Problemi correlati