Ruby on Rails/ActionController/Actions
外观
现在您已经了解了模型和视图,是时候进入MVC的最后一部分了:控制器。您的控制器为视图创建正确的数据并处理一些逻辑结构。为了完全理解整个框架,您还应该了解“路由”,以便完全理解它们如何协同工作。
动作是控制器的方法,它们响应请求。例如
class PeopleController < ApplicationController
def index
@people = Person.find(:all)
end
def show
@people= Person.find(params[:id])
end
end
在这个例子中,people控制器有两个动作index和show. 称为index的动作是默认动作,如果 URL 中未指定动作,则会执行该动作。例如
https://127.0.0.1:3000/people
该index动作也可以显式调用
https://127.0.0.1:3000/people/index
show 动作必须显式调用,除非已设置路由(路由将在后面介绍)
https://127.0.0.1:3000/people/show/1
在上面的示例中,数字 1 将在 params[:id] 中可用。这是因为默认路由是
map.connect :controller/:action/:id
这表明路径的第一部分是控制器名称,第二部分是动作名称,第三部分是 ID。路由的详细说明将在其单独章节中提供。