Может ли Rails сделать что-то эквивалентное json_decode PHP (как показано в этом примере) - PullRequest
0 голосов
/ 19 марта 2011

Я пытался разобраться в данных JSON, возвращаемых вызовами API.Я наткнулся на этот пример , показывающий, как использовать API-интерфейс RottenTomatoes в PHP.Есть ли подобная функциональность в Rails для «сопоставления» этих данных с «объектами»?Возможность такого рода вещей:

@movies.each do |movie|
  puts movie.title
end

Вот пример ожидаемого возврата данных

Ответы [ 2 ]

4 голосов
/ 19 марта 2011

ActiveSupport :: JSON имеет метод декодирования:

ActiveSupport::JSON.decode(json_string)

Смотрите здесь для хорошей рецензии:

http://www.simonecarletti.com/blog/2010/04/inside-ruby-on-rails-serializing-ruby-objects-with-json/

Для вашего примера:

data = ActiveSupport::JSON.decode(json_string)
data["movies"].each{|m| puts m}

Просто в качестве примера.

0 голосов
/ 19 марта 2011

Вы пробовали крэк?

http://railstips.org/blog/archives/2009/04/01/crack-the-easiest-way-to-parse-xml-and-json/

require 'httparty'
require 'crack'

response = HTTParty::get("http://api.rottentomatoes.com/api/public/v1.0/movies.json?apikey=XXX")
@movies = Crack::JSON.parse(response.body)
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...