XML => HTML с Hpricot и Rails

Я никогда не работал с веб-сервисами и рельсами, и, очевидно, мне нужно этому научиться. Я решил использовать hpricot, потому что он выглядит великолепно. В любом случае, _why был достаточно любезен, чтобы предоставить следующий пример на веб-сайте 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

Что выглядит просто, элегантно и легко. Отлично работает в Ruby, но у меня вопрос: как мне разбить это на рельсах?

Я экспериментировал с добавлением всего этого к одному контроллеру, но не мог придумать лучший способ вызвать это в представлении.

Итак, если бы вы анализировали XML-файл из веб-API и печатали его в красивом чистом HTML с помощью Hpricot, как бы вы разбили действия по моделям, представлениям и контроллерам и что бы вы разместили?


person btw    schedule 26.08.2008    source источник


Ответы (2)


Модель, модель, модель, модель, модель. Тонкие контроллеры, простые представления.

Модель RedHandedHomePage выполняет синтаксический анализ при инициализации, затем вызывает 'def render' в контроллере, устанавливает вывод в переменную экземпляра и печатает его в представлении.

person Terry G Lorber    schedule 27.08.2008

Я бы, вероятно, выбрал подход REST и имел бы ресурсы, представляющие различные сущности в используемом XML-файле. У вас есть конкретный пример XML, который вы можете привести?

person John Topley    schedule 26.08.2008