2011-02-26 6 views
3

J'ai une grande quantité de données imbriquées formaté en JSON.Comment faire pour sélectionner un élément JSON dans Ruby

Je voudrais choisir un seul élément:

{ "data": [ { "id": "123456", "de": { "name": "Jason Wade", "id": "654321"}, "message": "http://www.youtube.com/watch?v=ZfXHAqBRIEk" ...

  1. Comment sélectionner efficacement pour un seul élément, par exemple "message"?

  2. Existe-t-il une méthode simple recommandée pour cela? Dites le convertir en un tableau, ou quelque chose?

  3. Pourriez-vous me montrer quelques lectures pour analyse JSON?

Merci!

+0

double possible de [Rails et JSON: la question d'un débutant] (http://stackoverflow.com/questions/1826727/rails-and-json-a-beginners-question) – rubyprince

Répondre

3

Si vous utilisez Rails, reportez-vous à la question dans mon commentaire. Si vous utilisez du Ruby pur, il y a une gemme appelée json. Installez le bijou, et utiliser comme celui-ci

require 'rubygems' 
require 'json' 
url = "www.example.com/api?format=json" 
response = Net::HTTP.get_response(URI.parse(url)) 
data = response.body 
result = JSON.parse(data) 

format JSON et données ruby ​​types ont similitude et dans votre exemple, le résultat sera un hachage comme celui-ci

{"data"=>[{"message"=>"http://www.youtube.com/watch?v=ZfXHAqBRIEk", "from"=>{"name"=>"Jason Wade", "id"=>"654321"}, "id"=>"123456"}]} 
Questions connexes