Hola expertos!
estoy haciendo una gema para accesar a un api de un servicio Web, estoy
usando hpricot para parsear el xml.
mi problema es que estoy obteniendo un array de elementos hrpicot
#<Hpricot::Elements[{elem
“\r\n\t\t”
{elem “” } “\r\n\t” }]>
a el cual lo asigno como valor a una variable llamada ‘me’
Estos elementos los quiero guardar en un array de datos para luego
pasarlos
a una clase que los instancia, parseando los attributos respectivos y
seteando nuevos elementos del array, para que me quede algo asi @id =
796 ,
@nombre = ‘miguel’ etc…
para ello estoy usando el metodo inject para pasar el array a la clase,
mi
problema es que no puedo parsear los nodos hpricot cuando envio el array
a
la clase.
haciendo la siguiente prueba
(me/:user).inject([]) {|users ,user| users << user; users}
veo que esto envia
=> [{elem
“\r\n\t\t”
{elem “” } “\r\n\t” }]
por lo que, extrañamente, no puedo parsear los elementos como elementos
de
Hpricot, si se fijan este array no se encierra entre #<Hpricot::Elements
[
]>, me imagino que por eso ya no reconoce los elementos para ser
parseados
por Hpricot
¿hay alguna forma de parsear este array por sus atributtos con hpricot ,
o
de alguna otra forma?, o ¿estoy haciendo algo mal?
Saludos
Atte.
Miguel Michelson Martinez