我希望能够循环解析API响应。
我在控制器方法中有这个功能
@payout_batch= PayPal::SDK::REST::Payout.get('xxxxxxx')
logger.info "Got Payout Batch Status[#{@payout_batch.batch_header.payout_batch_id}]"
rescue ResourceNotFound => err
logger.error "Payout Batch not Found"
end
我可以显示如下结果:
<%= @payout_batch.batch_header.amount.value %>
但是我希望能够循环遍历.each循环中的所有内容(如果可能的话。)我尝试了几种方法,但似乎没有任何效果:
<% @payout_batch.batch_header.each do |x| %>
<%= (x["amount"]) %>
<% end %>
还有更多与此类似的方式。尝试通过以下方式定义响应:
json = JSON.parse(@payout_batch)
并使用json循环,但是无论如何都无法正常工作。
问题:如何在循环中在视图中产生响应?
答案 0 :(得分:0)
PayPal和Stripe Payment Gateway的响应始终以数组的形式出现。 (目前,因为我在这两个网关上工作,所以不了解其他网关。)
您可以说他们必须维护一个可处理单条记录或多条记录的通用结构,这就是为什么在每个支付网关的大多数情况下,它都以数组形式返回的原因。
所以您必须这样做。
<%= @payout_batch.items[0].batch_header %>