1
XML 구조를 레일에서 Hash.from_xml(@xml)
으로 해시로 변환하면 파서는 빈 배열과 nil 값을 구별하지 않지만 XML은 \
으로 즉시 종료되어 빈 배열이됩니다. <audio_languages/>
과 속성이 nil="true"
인 경우는 nil 값으로 해석됩니다.빈 배열과 nil 값이 보존되는 레일에서 XML을 해시로 변환하는 방법
<response>
<medias>
<media>
<id>1</id>
<name>Media-1</name>
<audio_languages/>
<avg_rating nil="true"></avg_rating>
</media>
<media>
<id>2</id>
<name>Media-2</name>
<audio_languages/>
<avg_rating nil="true"></avg_rating>
</media>
</medias>
</response>
Hash.from_xml(@xml)
에서 예상되는 출력은 다음과 같습니다 : (I 생성하는 방법에 대한 통제권이)
XML 구조는 다음과 같습니다 대신
{"response"=>{"medias"=>{"media"=>[{"id"=>"1", "name"=>"Media-1", "audio_languages"=>[], "avg_rating"=>nil}, {"id"=>"2", "name"=>"Media-2", "audio_languages"=>[], "avg_rating"=>nil}]}}}
, 나는 전무 값을 얻을 audio_languages
및 avg_rating
:
{"response"=>{"medias"=>{"media"=>[{"id"=>"1", "name"=>"Media-1", "audio_languages"=>nil, "avg_rating"=>nil}, {"id"=>"2", "name"=>"Media-2", "audio_languages"=>nil, "avg_rating"=>nil}]}}}