В rails3 вы бы написали:
respond_with(@switches) do |format|
format.html
format.json { render :json => @switches }
format.xml { render :xml => @switches }
format.all { render :text => "only HTML, XML, and JSON format are supported at the moment." }
end
Но это работает только в соответствии с блоком respond_to
в верхней части файла, детализируя ожидаемые форматы.Например,
respond_to :xml, :json, :html
Даже в этом случае, если кто-нибудь, например, спросит формат js
, будет запущен блок any
.
Вы также можете использовать только respond_to
, следующим образом:
@switches = ...
respond_to do |format|
format.html {render :text => 'This is html'}
format.xml {render :xml => @switches}
format.json {render :json => @switches}
format.all {render :text => "Only HTML, JSON and XML are currently supported"}
end
Надеюсь, это поможет.