2016-10-07 22 views
0

我試圖使用Block.io實現比特幣付款,並且當我從比特幣地址請求餘額時,它使用哈希響應。我如何提取特定信息並使數據用戶友好。將特定的JSON哈希信息提取到Rails視圖

我需要提取看起來像這樣的信息的哈希:

{"status"=>"success", "data"=>{"network"=>"BTCTEST", "available_balance"=>"0.01000000", "pending_received_balance"=>"0.00000000"}} 

我有一個控制器方法:

class PaymentsController < ApplicationController 
    def index 
    @balance = BlockIo.get_balance 
    end 
end 

並在視圖我有:

<%= @balance.each do |bal| %> 
    <p>Balance: <%= bal[1]["available_balance"] %></p> 
<% end %> 

而我在index.html.erb視圖中得到的結果如下所示:

Balance: 

Balance: 0.01000000 

{"status"=>"success", "data"=>{"network"=>"BTCTEST", "available_balance"=>"0.01000000", "pending_received_balance"=>"0.00000000"}} 

正如您在上面看到的那樣,它顯示平衡兩次,並且仍然在視圖中顯示散列。

我怎樣才能只顯示餘額:0.01000000? 任何協助或評論是非常感謝。

回答

1

首先,這是Hash,不Array

{"status"=>"success", "data"=>{"network"=>"BTCTEST", "available_balance"=>"0.01000000", "pending_received_balance"=>"0.00000000"}} 

其次,你可以在你的視圖文件做到這一點:

<p>Balance: <%= @balance["data"]["available_balance"] %></p> 
+0

@MorezSA你可以這樣做: 在你的'路線。 # 'get'payment/result =:balance'=>'payment#show',as :: test_payment' 在您的視圖中: 'test_payment_path(@balance [「data」] [「available_balance」])' –