2010-09-01 36 views
17

Tôi đang cố thêm thuộc tính vào nút Nokogiri hiện có. Những gì tôi đã làm điều này là:Làm thế nào để thêm thuộc tính vào nút Nokogiri?

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

Nhưng tôi nhận được lỗi:

TypeError Exception: wrong argument type String (expected Data) 

một loại Data dữ liệu là gì, và làm thế nào để tôi thêm một thuộc tính cho đối tượng Nokogiri?

Cảm ơn!

Trả lời

40

Tôi tin rằng bạn chỉ nên cần phải sử dụng the []= method, ví dụ:

node['foo'] = 'bar' 

Bạn cũng có thể sử dụng node.set_attribute('foo', 'bar').

+0

cảm ơn, nhưng điều đó không hiệu quả. bất kỳ ý tưởng nào khác? –

+0

Đây là những gì các tài liệu Nokogiri nói để làm. Bạn có chắc chắn đối tượng 'node' của bạn thực sự là một' Nokogiri :: XML :: Element'? Lỗi bạn nhận được khi bạn thực hiện 'node ['foo'] = 'bar'' là gì? – wuputah

+0

thực sự, bạn nói đúng - đó là một sai lầm về phía tôi. greg - bạn có phiền khi chỉnh sửa và gửi câu hỏi của bạn để tôi có thể upvote nó? cảm ơn! –

Các vấn đề liên quan