Rest风格的访问方式,在rails使用更简单。
ActionController::Routing::Routes.draw do |map|
map.resources :articles
end
这样rails就生成了适合普通CRUD操作的路由。
# C
new_article GET /articles/new
{:controller=>"articles ", :action=>"new"}
POST /articles(隐式的)
{:controller=>"articles", :action=>"create"}
# R
articles GET /articles(read a list)
{:controller=>"articles", :action=>"index"}
article GET /articles/:id(read one)
{:controller=>"articles", :action=>"show"}
#U
edit_article GET /articles/:id/edit
{:controller=>"articles", :action=>"edit"}
PUT /articles/:id(隐式的)
{:controller=>"articles", :action=>"update"}
#D
DELETE /articles/:id(隐式的)
{:controller=>"articles", :action=>"destroy"}
现在的页面,很多都用ajax来操作,以减少页面刷新,增强用户体验,加快编辑效率。
所以,上面的url_path都有一个formatted_xxx与其相对应。
#C
formatted_new_article GET /articles/new.:format
{:controller=>"articles", :action=>"new"}
POST /articles.:format
{:controller=>"articles", :action=>"create"}
#R
formatted_articles GET /articles.:format
{:controller=>"articles", :action=>"index"}
formatted_article GET /articles/:id.:format
{:controller=>"articles", :action=>"show"}
#U
formatted_edit_article GET /articles/:id/edit.:format
{:controller=>"articles", :action=>"edit"}
PUT /articles/:id.:format
{:controller=>"articles", :action=>"update"}
#D
DELETE /articles/:id.:format
{:controller=>"articles", :action=>"destroy"}