Rails POST,PUT,GET
在生成脚手架之后,Rails使我能够POST到items.xml
,这将创建一个新item
。 对items.xml
的GET将简单列出它们全部。 Rails根据我正在执行的操作类型来指定控制器中的哪个方法(分别为create
或index
)将被调用的位置?
更具体地说,POST调用methodA但GET调用相同的URL调用methodB。 这在哪里指定? Rails在哪里决定调用控制器的index
方法?
我相信它是由REST指定的。 这是一个列表为雅:
GET /items #=> index
GET /items/1 #=> show
GET /items/new #=> new
GET /items/1/edit #=> edit
PUT /items/1 #=> update
POST /items #=> create
DELETE /items/1 #=> destroy
编辑添加以获取所有这些路线,在config / routes.rb中,只需添加map.resources :items
按照惯例,Rails为RESTful资源定义了七种控制器方法。 他们是:
Action HTTP Method Purpose ------------------------------------------------------------------------- index GET Displays a collection of resources show GET Displays a single resource new GET Displays a form for creating a new resource create POST Creates a new resource (new submits to this) edit GET Displays a form for editing an existing resource update PUT Updates an existing resource (edit submits to this) destroy DELETE Destroys a single resource
请注意,因为Web浏览器通常只支持GET和POST,所以Rails使用隐藏字段将它们合适地转换为PUT和DELETE请求。
指定map.resources :items
config/routes.rb
map.resources :items
让你免费获得这七种方法。 您可以随时通过在控制台中输入rake routes
列出应用程序中的所有rake routes
。
了解这个最好的地方是路由指南。
链接地址: http://www.djcxy.com/p/41003.html上一篇: Rails POST, PUT, GET