Rails中的MVC流程与RESTful路由的流程总结


MVC的流程参见下列图片:

MVC diagram


其处理流程如下:


瀏覽器發出HTTP request請求給Rails
路由(Routing)根據規則決定派往哪一個Controller的Action
負責處理的Controller Action操作Model資料
Model存取資料庫或資料處理
Controller Action將得到的資料餵給View樣板
回傳最後的HTML成品給瀏覽器


对于REST路由,基本规则如下:


HTTP 请求URL动作具名路由作用
GET/usersindexusers_path显示所有用户的页面
GET/users/1showuser_path(user)显示某个用户的页面
GET/users/newnewnew_user_path创建(注册)新用户的页面
POST/userscreateusers_path创建新用户
GET/users/1/editeditedit_user_path(user)编辑 id 为 1 的用户页面
PATCH/users/1updateuser_path(user)更新用户信息
DELETE/users/1destroyuser_path(user)删除用户


常用流程如下:

点击localhost:3000/users  浏览器自动采用GET方法,匹配到上图的index方法


点击增加,用的GET方法,action为new,返回一个页面,填写玩之后POST进入create方法 


如果点击编辑,进入edit,然后进入update方法。 


可以看出,对于/users/1 对应方法GET、PATCH、DELETE的不同,使其action分别对应到show、update、destroy,路径均为user_path(user) (加括号说明需要参数)

对于/users 对应的GET、POST将其对应到index、create,路径都是users_path

对于。/users/new 只能是GET方法,对应至new方法  路径为new_user_path

最后一个为/users/1/edit  GET方法,对应edit,路径最长,为edit_user_path(user) (需要参数)


action接收参数时一般用params[:id]来完成  


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值