How does the respond_to block work in rails?
respond_to is a Rails helper method that is attached to the Controller class (or rather, its superclass). It is referencing the response that will be sent to the View.
respond_to
is a method on the superclassActionController
.- it takes a block, which is like a delegate. The block is from
do
untilend
, with|format|
as an argument to the block. - respond_to executes your block, passing a Responder into the
format
argument.
def index @posts = Post.all respond_to do |format| format.html # index.html.erb format.json { render :json => @posts } format.csv { render :csv => @posts } format.js end end