otwórz plik xml z węzłem aktualizacji nokogiri i zapisz
Próbuję dowiedzieć się, jak otworzyć plik xml, wyszukać według identyfikatora, zastąpić wartość w węźle, a następnie ponownie zapisać dokument.
mój xml
<?xml version="1.0"?>
<data>
<user id="1370018670618">
<email>[email protected]</email>
<sent>false</sent>
</user>
<user id="1370018701357">
<email>[email protected]</email>
<sent>false</sent>
</user>
<user id="1370018769724">
<email>[email protected]</email>
<sent>false</sent>
</user>
<user id="1370028546850">
<email>[email protected]</email>
<sent>false</sent>
</user>
<user id="1370028588345">
<email>[email protected]</email>
<sent>false</sent>
</user>
</data>
Mój kod, aby otworzyć i znaleźć węzeł
xml_content = File.read("/home/mike/app/users.xml")
doc = Nokogiri::XML(xml_content)
node_update = doc.search("//user[@id='1370028588345'] //sent")
node_update.inner_html ##returns value of "sent"
część, w której utknąłem, faktycznie aktualizuje węzeł.node_update.inner_html = "true"
zwraca błąd metodyinner_html
. następnie po zapisaniu zaktualizowanego pliku.