[Ror-es] Recorrer un Hash o array con simbolos

Pedro Marín pmarinr at gmail.com
Sat Dec 2 00:36:16 GMT 2006


Buenas,

llevo tiempo atrancado en lo que creo que es una tontería.

Tengo un hash del tipo

 @datos= {
:nombre=>"Pedro",
:apellidos=>"Marin",
:agenda_id=>5
}

y un array con los campos que quiero modificar

campos = [:nombre, :agenda_id]

Estoy haciendo una función a la que le paso @campos y que dependiendo del
tipo de dato (String o Number) me cambie el valor en @datos



por ejm:

def mod_datos(campos)
    @campos.each {|index|
          if @datos[index].is_a?(String)
              @datos[index] = "<b>"+ at datos[index]+"</b>"
          else
                @campos[index] = @datos[index]+5
          end
}
end


si ejecuto mod_datos(campos) deberia quedar  @datos asi

 @datos= {
:nombre=>"<b>Pedro</b>",
:apellidos=>"Marin",
:agenda_id=>10
}



el problema, al ser el índice un símbolo no consigo "recuperarlo" en el each

¿Como puedo recorrer el obtener y usar los simbolos al recorrer un hash o un
array?
¿Puedo convertir una cadena en un símbolo?

Espero haberme explicado. Gracias.
-- 
Pedro Marín
-------------- next part --------------
An HTML attachment was scrubbed...
URL: http://lists.simplelogica.net/pipermail/ror-es/attachments/20061202/091a242e/attachment.htm 


More information about the Ror-es mailing list