Oberon Dude
Oberon Dude

Reputation: 455

how can I generate json from respond_to method in rails?

If I have a block of code like this:

def show
  @post = Post.find(params[:id])

    respond_to do |format|
      format.html # show.html.erb
      format.xml  { render :xml => @post }
    end
  end

How do I add something like

format.json

Any tips, pointers, ideas gladly welcomed...

Upvotes: 30

Views: 55046

Answers (2)

VP.
VP.

Reputation: 5141

or you can handle it as javascript

respond_to do |format|
  format.js { render :json { :only => :name }.to_json }
end

then you just access your action with ".js" in the end.

Upvotes: 10

rogeriopvl
rogeriopvl

Reputation: 54056

It's just like the other formats except that you use render :json instead.

respond_to do |format|
  format.html # show.html.erb
  format.xml  { render :xml => @post }
  format.json { render :json => @post }
end

Upvotes: 69

Related Questions