1

Plivo API を使用しています。電話番号検索したら。ターミナルでこれが返されます:

{"stock"=>1,
     "voice_enabled"=>true,
     "region"=>"New York, UNITED STATES",
     "voice_rate"=>"0.00900",
     "prefix"=>"212",
     "sms_rate"=>"0.00800",
     "number_type"=>"local",
     "setup_rate"=>"0.00000",
     "rental_rate"=>"0.80000",
     "group_id"=>"29753262281573",
     "sms_enabled"=>true,
     "resource_uri"=>
      "/v1/Account/MAZDQ1ZJIYMDZKMMZKYM/AvailableNumberGroup/29753262281573/"}

それをループして HTML としてレンダリングし、次のような結果を得るにはどうすればよいですか。

<div>
<ul>
<li>
Region: json_obj['region']
</li>
<li>
Prefix: json_obj['prefix']
</li>
and so on ...
</ul>

plivo gem を使用すると、返されたオブジェクトを簡単に取得できます。

obj = response.last

私が試してみました:

obj = response.last
@region = obj['region']

に続く:

<%= @region %> 

これは、オブジェクトまたはメソッドが存在しないか、何も存在しないことを示すエラー メッセージを生成します。

私のルビーコードは次のとおりです。

get '/search' do
    erb :search
end

get '/search/data' do
    country_iso = params[:country_iso]
    region = params[:region]
    prefix = params[:prefix]
    p = RestAPI.new(AUTH_ID, AUTH_TOKEN)
    params = {'country_iso' => country_iso, 'region' => region, 'prefix' => prefix}
    #warn params.inspect
    response = p.get_number_group(params)
    pp response
    obj = response.last
    @region = obj['region']
    @prefix = obj['prefix']
    erb :search
end

端末は、パラメーターが ajax 呼び出しから正しく渡され、目的の番号検索が行われることを示しています。json 応答を適切な HTML で出力することはできません。

erb :search は上記のように 2 回表示する必要がありますか、それとも 1 回だけ表示する必要がありますか? search.erb ページには、パラメーターを収集するためのドロップダウンと入力ボックスがあり、すべて正常に機能します。

長くなってすみません。要約すると、JSON 応答を適切な HTML でレンダリングするにはどうすればよいですか?上記の 2 つの Ruby セグメントを使用して erb ページについて混乱していますか?

4

0 に答える 0