2011-06-24 175 views
0

這可能是一個低劣的標題。如果有人對如何描述這個問題有更好的想法,很高興聽到它。動態添加屬性到Builder標籤

如果我在Python構建一個XML文檔與ElementTree的,我可以做沿着

tag = ET.SubElement(root, 'tag') 
tag.set('foo', 'true') 
if bar 
    tag.set('baz', 'false') 

但隨着構建在Ruby中的行的東西,只有這樣,我可以看到如何設置標籤的屬性是做到以下幾點:

xml.tag :foo => 'true', :baz => 'false' 

有我的方式,後點以後分配baz?或者我必須像這樣重寫整個東西:

if bar 
    xml.tag :foo => 'true', :baz => 'false' 
else 
    xml.tag :foo => 'true', :baz => 'true' 
end 

回答

1

代碼更清晰,當你不更新就地。爲什麼不呢?

xml.tag :foo => 'true', :baz => (bar ? 'true' : 'false') 
+0

哇。我是個白癡。謝謝。 –