Я новичок в Rails и пытаюсь отобразить данный XML файл как HTML на мой взгляд. Я искал некоторое время, но я мог только найти темы о том, как визуализировать XML как HTML. Я не собираюсь делать ничего интересного, просто немного стирайте вывод в CSS. Есть ли какое-то очевидное решение для этого в Rails?
Было бы полезно иметь вывод, с которым я мог бы работать, например, с результатом запроса db, например:
@titles.each do |title|
title.author
title.date
end
Благодарю!
Вы можете использовать Nokogiri с XML-парсером. Скажем, вы используете какой-либо API для получения ответа XML, тогда вы можете сделать что-то вроде этого:
xml = Nokogiri::XML(open(your_api_url))
items = Hash.from_xml(xml.to_xml)
note: вам нужно вызвать.to_xml в xml var, поскольку до этого он является объектом Nokogiri.
items
теперь представляют собой хэш-код Ruby. Теперь вы можете создать из него объект Ruby, который затем можно использовать, как и любой другой объект ActiveRecord. Если это более чем одна entry
, было бы полезно сохранить все элементы в массиве:
@all_items = Array.new
items['item'].map do |item|
new = Item.new
new.title = item['title‘]
# an so on..
@all_items << new
end
Теперь, на ваш взгляд, вы можете сделать это:
<% @all_items.each do |item| %>
<%= item.title %>
<% end %>
Чтобы сделать эту работу, как указано выше, вам нужны эти два камня:
require 'nokogiri'
require 'open-uri'
Надеюсь, это поможет!
ruby
к своему вопросу, вы получите людей, которые будут давать вам советы поNokogiri
. У меня нет опыта с этим