私が使用しているSavongemは、単一のオブジェクトまたは配列を返します。SOAP応答が返されるまで、どちらになるかを知る方法はありません。
nil便宜上、応答をに変換し[]、単一の応答をに変換し[obj]、配列を配列のままにしておきたいと思います。これは、で簡単に行うことができますKernel#Array。
> Array nil
=> []
> Array 1
=> [1]
> Array [1,2,3]
=> [1, 2, 3]
ただし、をKernel#Array呼び出すため、どのオーバーライドto_aに対して失敗します。Hashto_a
> Array({a: 1})
=> [[:a, 1]]
> Array([{a: 1}, {b: 2}])
=> [{:a=>1}, {:b=>2}]
上記の2行目で見たい[{:a=>1}]です。