Pregunta

Nunca he trabajado con servicios web y rieles y obviamente esto es algo que necesito aprender.Elegí usar hpricot porque luce genial.De todos modos, ¿por qué ha sido tan amable de proporcionar el siguiente ejemplo sobre el sitio web hpricot:

 #!ruby
 require 'hpricot'
 require 'open-uri'
 # load the RedHanded home page
 doc = Hpricot(open("http://redhanded.hobix.com/index.html"))
 # change the CSS class on links
 (doc/"span.entryPermalink").set("class", "newLinks")
 # remove the sidebar
 (doc/"#sidebar").remove
 # print the altered HTML
 puts doc

Que parece simple, elegante y fácil.Funciona muy bien en Ruby, pero mi pregunta es:¿Cómo divido esto en rieles?

Experimenté agregando todo esto a un solo controlador, pero no se me ocurrió la mejor manera de llamarlo en una vista.

Entonces, si estuviera analizando un archivo XML desde una API web y imprimiéndolo en un HTML limpio y agradable con Hpricot, ¿cómo dividiría la actividad entre los modelos, vistas y controladores, y qué colocaría y dónde?

¿Fue útil?

Solución

Modelo, modelo, modelo, modelo, modelo.Controladores delgados, vistas simples.

El modelo RedHandedHomePage realiza el análisis durante la inicialización, luego llama a 'def render' en el controlador, establece la salida en una variable de instancia e imprime eso en una vista.

Otros consejos

Probablemente optaría por un enfoque REST y tendría recursos que representaran las diferentes entidades dentro del archivo XML que se está consumiendo.¿Tiene un ejemplo específico del XML que pueda dar?

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top