YII的基本工作流程
首先,必须了解MVC,不知道的就要去找资料学习了,此处不累赘。
手册里有一张关于Yii的工作流程图,这个必须熟记:
以下是翻译自手册的内容:
1、用户访问URL:http://www.example.com/index.php?r=post/show&id=1 , webserver通过入口脚本,捕获到该请求。
2、入口脚本创建一个application的实例并运行该实例。
3、该application通过request的组件获取用户的详细请求信息。
4、该application通过组件urlManager的组件,来决定由哪个控制器以及动作来处理该用户请求。在本例中,由控制器post(关联到PostController类),以及该post控制器的动作show来执行。具体show是做什么的,那么就由控制器的方法说的算了。
5、该application为已请求的控制器创建一个实例,用来处理之后的用户请求。该控制器决定了动作show是关联到该控制器类中的一个名为actionShow的方法。之后创建并执行该动作的准入过滤器(例如访问控制,访问准则)。如果该动作被过滤器所允许,那么该动作就会被执行了。
6、该动作,从Post这个模型中,读取数据库里ID=1的数据。
7、该动作渲染Post模型了的一个叫做show的视图。
8、该视图输出Post模型的一些属性。
9、该视图执行一些widgets(小工具)。
10、视图渲染这些结果是嵌在布局设计里的。
11、该动作完成视图渲染,并输出给客人。
转载于:https://blog.51cto.com/2686389/1059343