Я использую rest-client для возврата XML с другого сайта и попытки использовать Nokogiri для его анализа. XML выглядит так:Анализ XML с использованием Nokogiri
<?xml version="1.0" encoding="UTF-8"?> ...
<MXAUTOKESet>
<AUTOKEY>
<AUTOKEYID>27</AUTOKEYID>
<AUTOKEYNAME>WORKORDERNUM</AUTOKEYNAME>
<ORGID>xxxx</ORGID>
<PREFIX>12-</PREFIX>
<SEED>38979</SEED>
...
Я хочу извлечь номера «PREFIX» и «SEED».
мой взгляд код выглядит следующим образом:
<% xml_data = RestClient.get "URL (sorry can't display it in this question)" %>
<%= xml_doc = Nokogiri::XML(xml_data)%>
Вторая строка отображает возвращенную XML на странице, так что, я знаю, остальное-клиент работает, но я не знаю, как получить доступ к проанализированный XML.
Update1:
я смог creationDateTime
из заголовка XML, используя следующее. Но я до сих пор не могу получить значение SEED:
<%= doc = Nokogiri::XML(xml_data)%>
<h4>Creation Date</h4>
<% root = doc.root %>
<%= root["creationDateTime"] %>
<h4>SEED</h4>
<%= seed = root.xpath("SEED").text %>
или
<%= seed = doc.xpath("//SEED").inner_text %>
Пожалуйста, не ставьте всю эту логику на ваш взгляд. –
Марк - должен ли он идти в контроллер или модель? (Извините - я новичок в этом) – Reddirt
@Reddirt Контроллер. Извлеките фрагменты из XML в контроллере, а затем поместите их туда, где вы хотите увидеть их в представлении. – Phrogz