jRuby hash iteratie newbie hier

Ik ben heel nieuw voor rails in het algemeen en wat ik heb is een hash die wordt doorgegeven als json voor één indeling en nu moet ik het doorgeven aan de weergave om mee te werken, maar ik heb geen idee hoe ik de hash moet herhalen om het te laten werken in de weergave omdat ik een soort van elke lus erover moet doen. Het is een tweedimensionale hash dunno als dat alles betekent of niet.

bewerken

voorbeeld

{"status":"successful","service_list":[{"service_name":"mySQL","status":"RUNNING","status_message":"No errors reported","host":"1"},{"service_name":"PHP","status":"RUNNING","status_message":"No errors reported","host":"1"},{"service_name":"APache","status":"RUNNING","status_message":"No errors reported","host":"1"},{"service_name":"Jetty","status":"RUNNING","status_message":"No errors reported","host":"1"}]}

Dit wordt goed weergegeven als ik het doe als JSON, maar als ik hetzelfde gebruik om het weer te geven in een op HTML gebaseerde weergave, komt het probleem te vervallen

0
kun je alsjeblieft de voorbeeldgegevens posten en hoe je er doorheen wilt lopen?
toegevoegd de auteur corroded, de bron

1 antwoord

U hebt een ruby naar een JSON-hash geconverteerd, wat een Javascript-indeling is. In ruby zou je als volgt een hash krijgen:

hash = {"foo": "bar"}
puts hash["foo"] # This returns "bar"

JSON lijkt op ruby en is op dezelfde manier toegankelijk:

var hash = {"foo": "bar"};
alert(hash["foo"]); # This alerts "bar"

Als u deze verzameling in Javascript wilt herhalen, kunt u een for-lus gebruiken:

var data = {"status":"successful","service_list":[{"service_name":"mySQL","status":"RUNNING","status_message":"No errors reported","host":"1"},{"service_name":"PHP","status":"RUNNING","status_message":"No errors reported","host":"1"},{"service_name":"APache","status":"RUNNING","status_message":"No errors reported","host":"1"},{"service_name":"Jetty","status":"RUNNING","status_message":"No errors reported","host":"1"}]};
for(x=0;x

Als u dit JSON-object naar een ruby wilt converteren, kunt u "JSON.parse" met uw JSON-tekenreeks als argument aanroepen.

1
toegevoegd