博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
雷林鹏分享:YII 模型-视图-控制器(MVC)设计模式
阅读量:7212 次
发布时间:2019-06-29

本文共 925 字,大约阅读时间需要 3 分钟。

  Yii 使用了 Web 开发中广泛采用的模型-视图-控制器(MVC)设计模式。 MVC的目标是将业务逻辑从用户界面的考虑中分离,这样开发者就可以更容易地改变每一部分而不会影响其他。 在 MVC中,模型代表信息(数据)和业务规则;视图包含了用户界面元素,例如文本,表单等; 控制器则管理模型和视图中的通信。

  除了 MVC, Yii 还引入了一个前端控制器,叫做 应用,它表示请求处理的执行上下文。 应用处理用户的请求并将其分派到一个合适的控制器以继续处理。

  下面的示意图展示了 Yii 应用的静态结构:

  一个典型的工作流

  下图展示了一个 Yii 应用在处理用户请求时典型的工作流。

  1、用户发出了访问 URL http://www.example.com/index.php?r=post/show&id=1 的请求, Web 服务器通过执行入口脚本 index.php 处理此请求。

  2、入口脚本创建了一个 应用 实例并执行。

  3、应用从一个叫做 request 的 应用组件 中获得了用户请求的详细信息。

  4、应用在一个名叫 urlManager 的应用组件的帮助下,决定请求的 控制器 和 动作 。在这个例子中,控制器是 post,它代表 PostController 类; 动作是 show ,其实际含义由控制器决定。

  5、应用创建了一个所请求控制器的实例以进一步处理用户请求。控制器决定了动作 show 指向控制器类中的一个名为 actionShow 的方法。然后它创建并持行了与动作关联的过滤器(例如访问控制,基准测试)。 如果过滤器允许,动作将被执行。

  6、动作从数据库中读取一个 ID 为 1 的 Post 模型。

  7、动作通过 Post 模型渲染一个名为 show 的 视图。

  8、视图读取并显示 Post 模型的属性。

  9、视图执行一些 小物件。

  10、视图的渲染结果被插入一个 布局。

  11、动作完成视图渲染并将其呈现给用户。(编辑:雷林鹏 来源:网络 侵删)

转载于:https://www.cnblogs.com/linpeng1/p/10861775.html

你可能感兴趣的文章
vue按需加载
查看>>
创成汇2019年参加创新创业大赛都能获得什么?
查看>>
vue双向数据绑定原理
查看>>
美研究最新生物活性玻璃 可消灭致命的细菌
查看>>
内部类
查看>>
Vue中数组赋值问题
查看>>
APK path is not specified for module
查看>>
Linux运维宝典:最常用的150个命令汇总
查看>>
使用RecycleView实现无限滚动的日历
查看>>
Golang Failpoint 的设计与实现
查看>>
小微贷是美团的上坡之路?
查看>>
js 将线性数据转为树形
查看>>
java B2B2C 源码 多级分销Springcloud多租户电子商城系统- 整合企业架构的技术点(二)...
查看>>
微信小程序
查看>>
区块链+金融
查看>>
阿里开发者招聘节 | 面试题14:如何实现两金额数据相加(最多小数点两位)...
查看>>
一些不错的文章
查看>>
Python爬虫常见面试题(二)
查看>>
【译】Web Components简介
查看>>
java生成缩略图类源码
查看>>