Разбор XML-документа с Ruby libXML я заметил странное поведение. При поиске некоторых элементов и обходе результата я возвращаю объект результата в результат.Ruby libXML Xpath find возвращает результат в результате
Вот пример XML
<?xml version="1.0" encoding="UTF-8"?>
<main>
<projects>
<project id="1">
<name>Project 1</name>
<van>Guus</van>
</project>
<project id="2">
<name>Project 2</name>
<van>Guus</van>
</project>
</projects>
</main>
Синтаксический код (контроллер):
@projects = @xmlDoc.find('//project[@id]/name')
Отображение его (вид):
<ul>
<%= @projects.each do |pr| %>
<li><%= pr.first.content %></li>
<% end %>
</ul>
<hr>
<%= @projects.inspect%>
Результаты в:
- Project 1
- Project 2
#<LibXML::XML::XPath::Object:0x000008153182c0>
------------------------------------------------------------------------
#<LibXML::XML::XPath::Object:0x000008153182c0>
Как вы можете видеть, список содержит объект XPath self. Я преднамеренно отобразил его в виде списка маркеров и проверил после горизонтальной линии. Как вы можете видеть, последний элемент не имеет перед собой пули. Но откуда оно взялось? Я что-то упустил или это ошибка?
O глупо меня! Как я мог упустить это? Благодаря! – GTeley