Render :xml al responder a un ActiveResource y cosas varias

Hola a todos

Tengo una aplicación donde trabaja gente de help-desk, y otra la web
de la empresa. Había pensado en enviar las solicitudes de información
desde la web a help-desk usando ActiveResource y estaba jugando con
ello.

Los controladores de objetos compartidos en las dos los tengo con su
propio espacio de nombres, para separarlos de las acciones internas
de los trabajadores:

map.namespace :esb, :name_prefix => nil do |esb|
esb.resources :info_requests
end

Al hacer un post desde la web recibí un XML mal formado con la siguiente
linea, (que hasta cierto punto puedo ver normal… aún que no mucho).

malformed XML: missing tag start
<esb/info-request>

La chapucilla inicial que hice fue sobrescribir el to_xml a cuerno en
el
la parte del ActiveRecord para sacarle el “esb”, pero, no debería de
eliminar esa parte del espacio de nombre solito…? Me pegue un poco
con las opciones del :to_xml, la clase y todo lo demás pero no encontré
otra manera.

Lo mismo me pasa al pedir un listado de todas.

<esb/info-requests>
<esb/info-request>

¿Alguien sabe por donde pueden ir los tiros? Opciones que me falten,
cosas
raras de ActiveResource o el XML…

Un saludo a todos.

Hola!

Lo mismo digo una burrada, pero a bote pronto, el XML devuelto no
debería ser algo así?:

esb:info-request

</esb:info-request>

Yo creo que eso es un XML en el espacio de nombres “esb” y no lo que te
esta emitiendo, que por eso te da el error, porque una barra: “/” marca
un fin de tag.

No soy muy ducho en el tema… pero a lo mejor te ayuda
Un saludo
Roberto M. Oliva

Pablo Formoso E.
escribió:> Hola a todos

Mmmmmm… Bajo mi punto de vista no. Si haces eso estás obligando a que
en el otro lado la clase se encuentre en un mismo sitio(namespace), o al
menos a mapearlo de alguna forma, cuando lo importante
en realidad son los parámetros de objeto,

Es decir no podrías tener tu aplicación de calendario sencillo con

class Simple::Calendar < ActiveResource::Base
self.site = “…”

end

que beba de una más genérica

class Tools::Agenda::Calendar < ActiveRecord::Base
end

Soy muy malo poniendo ejemplos, pero sobre esto podríamos discutir
bastante.