Copyright © tutorialspoint.com

Ruby on Rails - Controller methods

previous

Each public method in a controller is callable by the (standard) URL scheme /controller/action

class WorldController < ApplicationController
def hello
  render :text => 'Hello world'
end

Parameters are stored in the params hash:

/world/hello/1?foo=bar
id = params[:id]     # 1
foo = params[:foo]   # bar

Instance variables defined in the the controllers methods are available to the corresponding view templates:

def show
  @person = Person.find( params[:id])
end

Distinguish the type of response accepted:

def index
  @posts = Post.find :all
  respond_to do |type|
    type.html # using defaults, which will render weblog/index.rhtml
    type.xml  { render :action => "index.rxml" }
    type.js   { render :action => "index.rjs" }
  end
end
previous

Copyright © tutorialspoint.com