开发者

Convert JSON String to JSON Array in rails?

I have a JSON string in rails as shown below:

[{"content":"1D","createdTime":"09-06-2011 00:59"},{"content":"2D","createdtime":"09-06-2011 08:00"}]

which are the objects of a class content with attributes content and created time.

I wou开发者_如何学Gold like to convert this JSON string to its respective JSON object array so that I can run a loop and decode the JSON to its objects in rails. How can I achieve this?


You can use the json library json

You can then do:

jsonArray = [{"content":"1D","createdTime":"09-06-2011 00:59"},   
              {"content":"2D","createdtime":"09-06-2011 08:00"}]
objArray = JSON.parse(jsonArray)

In response to your comment, you can do this, as long as your JSON fits your model

objArray.each do |object|
  # This is a hash object so now create a new one.
  newMyObject = MyObject.new(object)
  newMyObject.save # You can do validation or any other processing around here.
end


ActiveSupport::JSON.decode(string) will decode that for you into a delicious consumable object on the server side.


If JavaScript code is internal then you can do this:

<script>
    var hives = <%=@hives.html_safe%>;
</script>

Otherwise:

create hidden textarea and set @hives.html_safe as its value now you can get it in JavaScript as element's value as shown below:

In html.erb file

<%= text_area_tag :hives_yearly_temp, @hives.html_safe, { style: "display: none;"} %>

In js file

var hives = JSON.parse( $('#hives_yearly_temp').val() );

To run loop

for(key in hives) {
  alert( hives[key] );
}
0

上一篇:

下一篇:

精彩评论

暂无评论...
验证码 换一张
取 消

最新问答

问答排行榜