rails流程图

    xiaoxiao2024-05-16  120

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

    rails的lifecycle:

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

    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是更好的方法

    文章转自庄周梦蝶  ,原文发布时间5.17

    最新回复(0)