2010-09-01 8 views
17

Ich versuche, ein Attribut zu einem bestehenden Nokogiri-Knoten hinzuzufügen. Was ich getan habe, ist dies:Wie fügt man dem Nokogiri Knoten ein Attribut hinzu?

node.attributes['foobar'] = Nokogiri::XML::Attr.new('foo', 'bar') 

Aber ich bekomme die Fehlermeldung:

TypeError Exception: wrong argument type String (expected Data) 

Was ist ein Data Datentyp und wie füge ich ein Attribut zum Nokogiri Objekt?

Danke!

Antwort

40

Ich glaube, Sie sollten nur the []= method verwenden müssen, das heißt

node['foo'] = 'bar' 

Sie auch node.set_attribute('foo', 'bar') nutzen könnten.

+0

danke, aber das funktioniert nicht. irgendwelche anderen Ideen? –

+0

Das sagen die Nokogiri-Ärzte. Sind Sie sicher, dass Ihr 'node' Objekt eigentlich ein' Nokogiri :: XML :: Element' ist? Was war der Fehler, den du bekommen hast, als du 'node ['foo'] = 'bar' gemacht hast? – wuputah

+0

eigentlich hast du recht - das war ein Fehler meinerseits. greg - Macht es euch leid zu schlagen bearbeiten und auf Ihre Frage, so dass ich es upvote? Vielen Dank! –

Verwandte Themen