2017-01-18 12 views
0

Googleマップの距離行列へのクエリは、適切なデータを返します。コントローラは、結果をオブジェクト内に生成する。google距離行列からjsonを構文解析する

matrix.origins << origin 
matrix.destinations << destination 
matrix.data 
@data = matrix.data 

これはハッシュの配列である。私は、整数では興味がないとき<%= data["distance_text"].to_s %>文がno implicit conversion of String into Integerを生成しますが、インスタンス変数@data

戻り[[#<GoogleDistanceMatrix::Route origin: #<GoogleDistanceMatrix::Place lat: 61.1173, lng: 13.8875>, destination: #<GoogleDistanceMatrix::Place lat: 61.3405325, lng: 13.7243266>, status: "ok", distance_text: "56.9 km", distance_in_meters: 56948, duration_text: "1 hour 6 mins", duration_in_seconds: 3944>]]

。したがって私はeachコマンドがそれを処理することを期待したときにインデックスを呼び出すと思われます。これはどうしたらうまくいくのですか?

答えて

0

を使用している場合は!

<% @data.each do |index, data| %> 
    <div class="small-2 medium-2 large-2 columns text-center"> 
    <%= index.distance_text %> 
    </div> 
    <div class="small-2 medium-2 large-2 columns text-center"> 
    <%= index.duration_text %> 
    </div> 
<% end %> 
0

それがインデックスを使用しているので、あなたはそれを使用し、Rubyの2.3倍以上

@data.dig(0,0,:distance_text) 

OR

@data[0][0]["distance_text"] 
+0

最初に#<配列: 'に対して未定義のメソッド' dig 'を返します.Latterは# Jerome

関連する問題