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
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] );
}
ActiveSupport::JSON.decode(string)
will decode that for you into a delicious consumable object on the server side.
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