rails流程图

读R4R,才读完第2章,前两章没什么新内容,算是复习吧

rails的lifecycle:
test3.jpg

从浏览器发起一个请求的基本流程:

A.server to dispatcher

服务器通过你指定的路径查找dispatcher,比如,你在apache配置:

<VirtualHost www.r4rmusic.com>
ServerName www.r4rmusic.com
ServerAlias r4rmusic.com
DocumentRoot "/usr/local/share/railsapps/r4rmusic/public/"
</VirtualHost>

服务器将在"/usr/local/share/railsapps/r4rmusic/public/下查找分发器,在rails应用下面有这么几个文件就是:dispatch.cgi dispatch.fcgi dispatch.rb

这几个文件中的某个将被调用

B.dispatcher to controller

分发器将解析发起请求的URL,按照:

1.controller的名称

2.action名称

3.请求id值

来寻找相应的controller的action,并执行.当然,你可以通过编辑config下面的routes.rb来定义自己的路由规则

C.performance of a controller action

当相应的controller以及相应的action被找到并且执行,他们将可以访问:

1.CGI数据,form提交的数据

2.controller的session信息,内建的session方法

本质上rails是把业务逻辑放在controller的action里面,也就是没有我们在J2EE中所谓的业务逻辑层.当业务逻辑或者说action较多时,你的controller文件不可避免的变的很长...在维护性和可读性也许会带来问题,当然,细分controller是更好的方法

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值