Ruby on Rails 2.1 - 控制器方法



控制器中的每个公共方法都可以通过(标准的)URL 架构 /controller/action 进行调用。

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

参数存储在哈希中 -

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

在控制器方法中定义的实例变量可用于对应的视图模板 -

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

区分接受的响应类型 -

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
rails-quick-guide.htm
广告