How to format json in rails controller? Via link_to i’m sending and get in method params[:cat], then i fetch all childrens via parent (params[:cat]), but how to format this all in json format for my jqTree? So it looks like {label : (here goes params[:cat]), children: [{all @search_trees.id}]} ?
require 'json'
@search_trees = SearchTree.find(:all, :include => [:designation], :conditions => { :STR_ID_PARENT => params[:cat]})
#data = "{ label : '10001', children : [{label : '10111'},{label : '10122'}] }"
respond_to do |format|
format.html # index.html.erb
format.xml { render :xml => @search_trees }
format.json { render :json => data }
end
I’ll fetch a part of question from my long question here:
Her is my json:
[{“search_tree”:{“STR_DES_ID”:42275,”STR_ID”:10130,”STR_ID_PARENT”:10726,”STR_LEVEL”:4,”STR_NODE_NR”:130,”STR_SORT”:621,”STR_TYPE”:1,”designation_id”:42275}},{“search_tree”:{“STR_DES_ID”:42277,”STR_ID”:10132,”STR_ID_PARENT”:10726,”STR_LEVEL”:4,”STR_NODE_NR”:132,”STR_SORT”:620,”STR_TYPE”:1,”designation_id”:42277}},{“search_tree”:{“STR_DES_ID”:43152,”STR_ID”:10730,”STR_ID_PARENT”:10726,”STR_LEVEL”:4,”STR_NODE_NR”:730,”STR_SORT”:622,”STR_TYPE”:1,”designation_id”:43152}},{“search_tree”:{“STR_DES_ID”:42209,”STR_ID”:12344,”STR_ID_PARENT”:10726,”STR_LEVEL”:4,”STR_NODE_NR”:2344,”STR_SORT”:623,”STR_TYPE”:1,”designation_id”:42209}}]
i need to output like this
jqTree – creating tree data from json
If you want to customize your json, you can use RABL or JBuilder. You will find screencasts here : http://railscasts.com/episodes/320-jbuilder?autoplay=true and here : http://railscasts.com/episodes/322-rabl?autoplay=true.