我正在返回一个包含10个不同Amazon aws_objects的数组。我想遍历它们中的每一个并将它们保存到我的数据库中,但有时Amazon API会返回空数组。例如,标题方法可能会成功,但medium_image方法可能会返回零,从而打破循环。我知道我需要在这里使用一些条件函数,但我不确定如何以每次都有效的方式进行操作。 (如果我可以跳过空数组,然后继续保存数据,这也会很好)。使用Ruby循环访问Array时跳过空元素
items.each do |aws_object|
if aws_object.blank? == false
@amazonproduct = Amazonproduct.new
@amazonproduct.name = aws_object.item_attributes.title.to_s.gsub("&", "&")
@amazonproduct.asin = aws_object.asin.to_s
@amazonproduct.image_url = aws_object.medium_image.url.to_s
@amazonproduct.description = aws_object.item_attributes.feature.to_s
@amazonproduct.price = aws_object.item_attributes.list_price.formatted_price.to_s.gsub("$", "")
@amazonproduct.object_url = aws_object.item_links.item_link[0].url.to_s
@amazonproduct.save
end
end
我试过使用while,除非 - 遇到麻烦提出正确的组合。
谢谢你的帮助!
詹姆斯