2014-10-31 4 views
0

Я делаю вызов внешнего API и получаю следующие данные ответа в JSON.Как использовать данные JSON, возвращенные вызовом API в Rails 4

{ 
    "count": 1, 
    "styles": [ 
    { 
     "vehicle_id": "400882961", 
     "style": "AWD Titanium 4dr Sedan" 
    } 
    ] 
} 

Мне интересно, как я могу использовать данные на мой взгляд. Я использую @details для представления моих данных. Если я поставлю @details.inspect на мой взгляд, я даю мне данные, как вы видите здесь.

Я хочу, чтобы иметь возможность указывать информацию о транспортном средстве и стиле в моем представлении.

Полностью новый для Rails, поэтому я немного потерян. Любая помощь будет принята с благодарностью.

ответ

1

Первое, что вам нужно сделать, это разобрать JSON. Эта функция является частью языка Ruby, как из 1.9+:

@api_response = JSON.parse(data) 

Это превращает сырой JSON (строка) в Queryable структуру данных Рубина (а хэш). Затем вы просматриваете элементы в хеше. Обратите внимание, что styles является массивом, поэтому может быть возвращено более одного vehicle_id.

Вот некоторые примеры того, как вы могли бы использовать это в шаблоне:

<%= @api_response["styles"].first["vehicle_id"] %> 

Или, если вы хотите перебрать все стили:

<% @api_response["styles"].each do |h| %> 
    <%= h["vehicle_id"] %>: <%= h["style"] %> 
<% end %> 

Вы можете прочитать больше о Ruby-хэшей in the Ruby docs.

Смежные вопросы