Ruby Gem - 无法将字符串转换为整数错误

时间:2013-08-18 22:13:05

标签: ruby-on-rails ruby amazon amazon-product-api

我正在使用a2z gem处理亚马逊的产品广告API,当我尝试在item_lookup请求中指定多个product_id时,我遇到了这个问题。这是我可以解决的问题,还是我必须联系宝石作者?

can't convert String into Integer

这是我的代码:

def product_lookup
    # Check which Retailer this is for
    case params[:retailer] 
        when "amazon"
            client = A2z::Client.new(key: ENV["AMAZON_PAAPI_KEY"], secret: ENV["AMAZON_PAAPI_SECRET"], tag: ENV["AMAZON_PAAPI_TAG"])
            product_ids = []
            product_ids << product_one_id = params[:product_one_id]
            product_ids << product_two_id = "B00D43QGPS"
            product_ids = product_ids.join(",")

            @products = client.item_lookup do
                 id product_ids
                 response_group 'Small, Images, OfferListings'
            end

            render :json => @products

    end
end

1 个答案:

答案 0 :(得分:1)

宝石创作者在这里。 :)感谢您提出问题以及在Github上添加问题。

我想知道在gem依赖项或Amazon响应结构中是否发生了某些变化,除非我因为宝石目前缺乏测试而无意中打破了另一个变化。

我看到问题是什么:响应是一个哈希数组(即:多个产品),我只是把它当作哈希(即:单个产品)。我需要将响应解析更改为数组帐户,这不应该太难。让我看看我是否可以一起修复。