Mam istniejący builder Nokogiri i kilka węzłów xml w ciągu znaków z innego źródła. Jak mogę dodać ten ciąg do mojego programu budującego?Jak dodać łańcuch XML do Nokogiri Builder
str = "<options><cc>true</cc></options>"
xml = Nokogiri::XML::Builder.new do |q|
q.query do |f|
f.name "awesome"
f.filter str
end
end
Ten ucieka str w coś podobnego:
xml.to_xml
=> "<?xml version=\"1.0\"?>\n<query>\n <name>awesome</name>\n <filter><options><cc>true</cc></options></filter>\n</query>\n"
Znalazłem wiele, wiele podobnych rzeczy, w tym lęgowych budowniczych i za pomocą operatora < <, ale nic nie działa, aby wstawić drzewa węzła pełny xml do bloku budowniczego. Jak mogę uczynić ten ciąg na prawdziwych węzłach?
Robi to na własnej skórze. Zobacz odpowiedź @matt, która używa operatora ['<<'] (http://nokogiri.org/Nokogiri/XML/Builder.html#method--3C-3C) do dołączania surowego XML. –
Jedna aktualizacja klejnotu nokogiri i pakiet później, a składnia @matt działa świetnie. Nie wiem, co powiedzieć, ponieważ wcześniej próbowałem użyć << wiele sposobów! – genkilabs
To całkiem niezły pomysł, aby zaktualizować swoje klejnoty w świecie Ruby. Tam, gdzie pozostawaliśmy w tyle za krwawiącymi krawędziami w innych językach, często dobrze jest być z Rubim na bieżąco. –