REST:全称Representational State Transfer,一种软件架构风格。
REST风格意味着满足一定的约束条件,满足它们的应用或设计即RESTful。
RESTful路由是Rails的标准路由方式。
RESTful使用一种约定好的标准配置Controllers和Actions,尽管有人不喜欢这样的方式。Ruby on Rails具有“约定优于配置”的理念,RESTful路由的优点也是显而易见的,无需手工配置,简化路由设计,简单易记。它对应HTTP里的POST、GET、PUT、PATCH、DELETE五个方法和数据库的增加、读取、更新、删除四项操作。
实现方法:在config/routes.rb加入
resources :users
这样,即完成了8项路由配置,如下表所示,一定要注意单复数。
GET | /users | index | users |
GET | /users/new | new | new_event |
POST | /users | create | users |
GET | /users/:id | show | user |
GET | /users/:id/edit | edit | edit_event |
PUT | /users/:id | update | user |
PATCH | /users/:id | update | user |
DELETE | /users/:id | destroy | user |
注:PATCH方法是对PUT方法的补充,Rails4将其正式引入。比较它们的异同:
1.都指向 controller#update;
2.都是用来更新已知资源;
3.PUT是幂等的,而PATCH不是;
4.PUT适用于对集合进行整体更新,PATCH适用于对单体进行局部更新。