Rails Json XML Action
JSON
render :json => object
Convert object to json style
Example
class ItemsController < ApplicationController def index snsd = {'name' =>'Yoona','age' => 24} render :json => snsd end end
Access http://localhost:3000/items/index, you can see json output
XML
render :xml => object
Convert object to xml
class ItemsController < ApplicationController def index snsd = {'name' =>'Yoona','age' => 24} render :xml => snsd end end
respond_to
General output is HTML but, if set implicitly, we want to output json or xml.
How to do it?
def index respond_to do |format| format.html format.json {render :json => object} format.xml {render :xml => object} end end
Example
class ItemsController < ApplicationController def index @snsd = {'name' => 'Yoona', 'age' => 24} respond_to do |format| format.html format.json {render :json => @snsd} format.xml {render :xml => @snsd} end end end
Template app/views/items/index.html.erb
<p> Name : <%= @snsd["name"] %><br /> Age : <%= @snsd["age"] %> </p>
http://locahost:3000/items/index
http://localhost:3000/items/index.json
http://localhost:3000/items/index.xml