Cada método público em um controlador pode ser chamado pelo esquema / controlador / ação de URL (padrão).
class WorldController < ApplicationController
def hello
render :text => 'Hello world'
end
Os parâmetros são armazenados no hash params -
/world/hello/1?foo = bar
id = params[:id] # 1
foo = params[:foo] # bar
Variáveis de instância definidas nos métodos dos controladores estão disponíveis para os modelos de visualização correspondentes -
def show
@person = Person.find( params[:id])
end
Distinguir o tipo de resposta aceita -
def index
@posts = Post.find :all
respond_to do |type|
type.html # using defaults, which will render weblog/index.html.erb
type.xml { render :action => "index.rxml" }
type.js { render :action => "index.rjs" }
end
end
rails-reference-guide.htm