オブジェクトの配列からオブジェクト属性の新しいハッシュを作成しようとしています。私はRuby aaws gemを使ってAmazon APIを使用しています。APIが返す配列をどのようにループして配列全体ではなく属性のみを返すかを考え出すのに問題があります。以下のコードを実行すると、配列全体が返されます。Rubyのオブジェクトの配列からオブジェクト属性を返します
def self.amazon(search)
keywords = "#{search}"
resp = Amazon::AWS.item_search('Books', { 'Title' => keywords })
items = resp.item_search_response[0].items[0].item
items.each do |attribs|
a = attribs.item_attributes
@results = []
@results << {:label => "#{a.title.to_s[0,85] unless a.title.nil?}",
:value => "#{a.title.to_s unless a.title.nil?}",
:img => "#{attribs.medium_image.url.to_s unless attribs.medium_image.url.nil?}"""
}
end
end
私はループを修正する必要がありますが、私はどこが間違っているのか正確にはわかりません。