2009-12-03 39 views
5

Tôi đang cố gắng để một tour du lịch kml Google với ruby ​​và tôi nhận được một lỗi cú pháp với mã nàyKý tự đặc biệt với Ruby XML Builder

xml = builder.gx:Tour 

Nó không thích đại tràng. Có cách nào để buộc nó biên dịch điều này?

Trả lời

8

Đã phải làm

xml.tag!("gx:tour") 
4

Đúng vậy, và nếu bạn muốn đặt một số giá trị, nó sẽ là một cái gì đó giống như

xml.tag!("gx:tour", "value of gx:tour", "attribute1"=>"attribute1val", "attribute2"=>"attribute2val", ..., "attributeN"=>"attributeNval") 
1

Kể từ phiên bản 2 của Builder có some support for namespacing.

Vì vậy, bây giờ nếu bạn muốn đạt được kết quả tương tự bạn có thể thêm một không gian trước dấu hai chấm:

xml = builder.gx :Tour 
4

Nếu bạn muốn thêm một thẻ khác bên trong thẻ sau đó

xml.tag!("tag:name", attribute: "value") do |t| 
    t.title("value for title") 
end 

Và nếu bạn muốn đặt một giá trị đơn giản sau đó

xml.tag!("tag:name","value for tag", attribute: "attribute value") 
Các vấn đề liên quan