2017-11-21 8 views
0

ハッシュをxmlに変換しようとしています。だから、私はHash.to_xmlを使用しています。私は、rootとして<hash>タグを望んでいない、"to_xml"から<hash>タグをルートとして削除します

> {a: "1", b: {c: "2"}}.to_xml 

<?xml version=\"1.0\" encoding=\"UTF-8\"?> 
<hash> 
    <d> 
    <a>1</a> 
    <b> 
     <c>2</c> 
    </b> 
    </d> 
</hash> 

を与えるが、:しかし、それはルート

簡単な例として<hash>タグとして追加されます。

DOCは、のルートで設定可能です。だから、私は

{d: {a: "1", b: {c: "2"}}}.to_xml(root: "") 

を試してみました。しかし、その代わりに<hash>

NOTEの空<>与える:私の実際のハッシュでを、私は常にルートキーを持っています。上記の例のように、私はdとしています。しかし、それは

+0

しかし、あなたがルートタグ –

+0

を持っている必要が_:出力

hash = {d: {a: "1", b: {c: "2"}}} root = hash.keys.first xml = hash[root].to_xml(root: root) 

そして、それは以下となります、私は常にルートキーを持っているので、私はそれが好き行うことができます"タグをルートとして使用したくない" _ - 代わりに何をしたいですか? – Stefan

+0

@Stefan私が使用していた例を更新しました。だから、根を 'd 'にしたい – Abhi

答えて

0

[OK]を、私はそれを得ました。

<?xml version=\"1.0\" encoding=\"UTF-8\"?> 
<d> 
    <a>1</a> 
    <b> 
    <c>2</c> 
    </b> 
</d> 
0

それは良い見ていないダイナミックだとして、それが私には知られていないが、

h = {d: {a: "1", b: {c: "2"}}} 

h[h.keys.first].to_xml(root: h.keys.first) 

<?xml version=\"1.0\" encoding=\"UTF-8\"?> 
<d> 
    <a>1</a> 
    <b> 
     <c>2</c> 
    </b> 
</d> 
関連する問題