Magento的MVC流程

来源:互联网 发布:ubuntu17.10安装mysql 编辑:程序博客网 时间:2024/05/07 11:02

Magento抽象的MVC模式,大概的运行过程是,

  • URL地址首先被一个PHP文件解析
  • 该PHP文件会根据解析情况实例化一个Magento应用
  • 这个Magento应用会实例化一个前端控制器对象
  • 接着,前端控制器实例化路由对象
  • 路由对象检查请求的URL地址,并作出相应的匹配
  • 如果匹配成功,相应的控制器和动作会被分发
  • 该控制器会被实例化,并且与动作同名的方法会被调用
  • 被调用的方法根据请求的类型,对相应的模型调用相应的方法以获取数据
  • 结束方法调用之后,控制器会实例化布局对象
  • 根据请求中包含的变量及系统属性(通常叫做句柄),布局对象会为该请求创建一系列的Block对象
  • 布局还会在相应的Block对象中调用输出方法,开始套嵌输出(Blocks之间的套嵌)
  • 每个Block都有相关联的模板文件,Blocks包含PHP逻辑代码,模板文件则负责生成HTML文件
  • Block从模型中获取相关数据,换句话说,控制器并不用来传递数据到视图中

主要涉及到到前端控制器->路由->动作控制器