`
hongtoushizi
  • 浏览: 370850 次
  • 性别: Icon_minigender_1
  • 来自: 天津
社区版块
存档分类
最新评论

Qt Creator 你必须要掌握的快捷操作PHP.MVC的模板标签系统之标签行为调度

    博客分类:
  • php
php 
阅读更多

TagActionDispatcher是一个标准的ActionDispatcher类的实现,它支持访问基本模板标签。 TagActionDispatcher类支持相同的ActionObjects集合和ViewResourcesConfig属性作为默认的 ActionDispatcher。TagActionDispatcher类能被用在带有或没有带有模板标签系统上,尽管由于它的额外处理会造成小的性 能下降。

  模板标签库是PHP。MVC框架结构的子系统,模板标签库联合TagActionDispatcher一起工作来支持一些简单的模板标签。

  下面的图表显示了PHP。MVC模板标签系统的总揽。左边展示的是模板标签系统的程序流程。右边是TagActionDispatcher的程序流程,还有标签模板是怎样使这些类进行交互。

PHP.MVC的模板标签系统之标签行为调度

  

  1、初始化

  当控制器传递控制到达TagActionDispatcher,一些初始化触发去设置ActionObjects和ViewResourcesConfig属性为了使用我们的模板:
从request中重新获得$form,$errors和$data对象,如果这些对象中的任意一个已经在之前被创建(比如在Action类中),那么对象现在将在资源模板中不可见,否则对象将被设置为NULL。

  重新获得ViewResourcesConfig对象的参考,它包含了配置参数。

  设置在ViewResourcesConfig参数中指向模板源文件和编译的模板文件的路径。

  2、设置标签页面

   模板源文件的扩展名(可能是"。ssp")被用来和ViewResourcesConfig->tagFlagStr参数相比较来决定是否这个页面需要 处理,否则页面将被处理为标准(无标签)模板文件。我们能在view-resources元素中配置标签文件扩展名,就像这样:

<view-resources
...
tagFlagStr = "。ssp"
tagFlagCnt = "-4"
...
</view-resources>

   tagFlagStr指示了标签模板源文件能被预处理,比如:myPage。ssp。这个扩展名触发标签处理。属性tagFlagCnt定义了文件名结 尾的字符数,包括"。"(xxxYyy。ssp)。据个例子,-4代表源文件名最后4个字符。默认值是。ssp和-4,因此如果我们使用一个模板文件名像 myPage。ssp,我们不需要设置这些参数。

  3、处理标签文件

  模板标签系统决定是否运行标签处理器,要根据 ViewResourcesConfig->processTags属性。如果这个属性为真,模板页(及它所包含的页)将被标签处理器类所处理,否则标签 处理器不会被调用。开发者只要将它在开发中将其设置为真即可,假则不处理。但要注意的是当processTags属性设置为真,修改过的标签页才会被编译 (这依赖于compileAll属性设置)。我们能定义processTags属性在view-resources元素,就像这样:

<view-resources
...
processTags = "True"
...
</view-resources>

  注意,它的默认值是假。

  4、编译模板页。

   如果TagActionDispatcher决定模板页将被处理,那么它会传递控制给模板标签系统。现在模板标签系统将决定是否只编译修改过的页,还是 编译所有页。这种行为使用ViewResourcesConfig->compileAll属性来定义。我们定义compileAll属性就像这样:

<view-resources
...
compileAll = "True"
...
</view-resources>

  这个属性默认为假。

  5、只编译修改的页

  如果compileAll属性设置为假(默认值),那么只会编译修改过的页。据个例子,如果被请求的页面自从上次被请求以来被修改过,此页将会被编译。

  6、编译所有的页

  如果compileAll属性设置为真,模板标签系统将总是编译页面(包括包含的页面)无论此页面自从上次请求以来是否修改过。开发者使用在开发中使用这个选项能够保证所有的页面都被处理。

  7、处理VIEW资源

  在处理完模板页之后,控制权回到TagActionDispatcher。被请求的VIEW资源(模板文件)将被任何其他的正规PHP。MVC模板文件所处理。TagActionDispatcher重新获得被编译的页(包括包含的页面)并且将页面输出给用户的浏览器。如果模板标签系统没有被调用,TagActionDispatcher将被请求的页面作为正规的VIEW资源来处理。比如TagActionDispatcher能被用来代替标准的ActionDispatcher。 

分享到:
评论

相关推荐

    Qt Creator for Windows qt-creator-win-opensource-2.5.2.exe

    Qt Creator for Windows,qt-creator-win-opensource-2.5.2.exe,官方网站的opensource开源免费版本,适合需要进行Windows平台Qt开发的朋友。 注意:本资源为Qt Creator,是Qt的开发IDE,不是Qt库本身,下载前请...

    Qt Creator快速入门(第三版).pdf+源码.rar

    这个资源包包含了“Qt Creator快速入门(第三版).pdf”电子书以及源码,旨在帮助初学者快速掌握Qt Creator的基本用法和Qt编程的核心概念。 在PDF文档中,你将找到以下关键知识点: 1. **Qt库介绍**:Qt是一个开源的...

    qt-creator-opensource-src-3.6.0.tar.gz

    要编译和安装 Qt Creator,你需要遵循以下步骤: 1. 使用 `tar -xzf qt-creator-opensource-src-3.6.0.tar.gz` 命令解压文件。 2. 进入解压后的目录。 3. 运行配置脚本,通常为 `./configure`,可能需要根据你的系统...

    qt-creator-opensource-src-4.3.1.rar 源代码

    通过分析和学习Qt Creator的源代码,开发者不仅可以提升对Qt库的掌握,还能深入了解IDE的内部机制,为自己的软件开发带来灵感。此外,对于希望改进Qt Creator功能或创建自定义版本的开发者,源代码提供了无价的参考...

    QtCreator 4.12.4 Build on Qt5.12.9 with Mingw730 32bit

    qtcreator 4.12.4 用Qt 5.12.9库,编译工具就GCC 7.3.0 32bit编译而成。 Qt5.12是个长期支持版本。 下载后,安装方法: 把c:\qt\qt5.12.9\5.12.9\mingw73_32\bin文件夹下面所有的dll文件, 复制到c:\qt\qtcreator ...

    qt-creator-2.8.0-rc-src.tar.gz

    《Qt Creator 2.8.0 RC 源代码在 Linux 平台的应用与解析》 Qt Creator 是一个集成开发环境(IDE),专为使用 Qt 框架进行跨平台应用开发而设计。该工具提供了丰富的特性,包括代码编辑、项目管理、调试以及版本...

    qt-creator-opensource-src-3.2.2.tar.gz

    1. **跨平台支持**:Qt Creator支持Windows、Linux、macOS以及Android等多个操作系统,使得开发者能够在不同平台上进行无缝切换。 2. **集成开发环境**:内置的C++编辑器具有语法高亮、自动完成、错误检查等功能,...

    QtCreator帮助文档.zip

    《Qt Creator 帮助文档全面解析》 Qt Creator 是一款功能强大的集成开发环境(IDE),专为使用 Qt 框架进行跨平台应用程序开发而设计。...因此,充分利用这份文档,将使你在Qt编程之旅中事半功倍。

    [Qt]Qt Creator汉化方法 qt汉化包

    【Qt Creator汉化方法】 Qt Creator是一款强大的跨平台集成开发环境(IDE),广泛用于C++和Qt应用程序的开发。为了方便中国用户使用,Qt Creator提供了汉化包,使其界面能够显示为中文。以下是一个详细的Qt Creator...

    qtcreator-3.4.tar.gz

    在这个“qtcreator-3.4.tar.gz”压缩包中,包含的是你自己编译的QT Creator 3.4版本,适用于Ubuntu 64位系统。这个自编译的版本特别解决了在进行远程调试ARM设备时遇到的SSH协议错误:“Maximum packet size too low...

    QTCreator计算器.zip

    QTCreator计算器.zip/QTCreator计算器.zip/QTCreator计算器.zip/QTCreator计算器.zip/QTCreator计算器.zip/QTCreator计算器.zip

    Qt Creator快速入门(第三版).pdf

    该套书(第3版)是基于Qt Creator集成开发环境的入门书籍,详细介绍了QtCreator开发环境的使用和Qt基本知识点的应用。本书内容主要包括Qt的基本应用,以及Qt在图形动画、影音媒体、数据处理和网络通信方面的应用内容。

    Qt Creator快速入门.pdf

    - **跨平台性**:Qt Creator 支持在多种操作系统上开发和部署应用程序。 - **强大的编辑器**:具备智能代码补全、语法高亮显示等功能。 - **集成调试器**:支持多种调试方式,包括断点设置、变量监视等。 - **...

    QT Creator 5.10 CDB调试器

    在QT Creator中集成CDB,开发者可以更方便地对Qt应用程序进行调试,尤其是对于那些需要深入理解内存管理、线程行为以及系统调用等问题时,CDB的强大功能就显得尤为重要。 首先,让我们详细了解一下CDB。CDB是...

    《QtCreator快速入门》第3版课件PPT.zip

    Qt Creator是一个跨平台的、开源的开发工具,适用于Windows、Linux、macOS等多个操作系统,为开发Qt应用程序提供了一体化的解决方案。 Qt是一个强大的C++库,它提供了丰富的图形用户界面(GUI)工具和系统级接口,...

    Qt Creator快速入门 第三版 完整带书签PDF+源码

    《Qt Creator快速入门 第三版》是一本专为想要学习和掌握Qt Creator的开发者准备的指导书籍。Qt Creator是一款强大的跨平台集成开发环境(IDE),主要用于编写使用Qt库的应用程序。该书配合完整带书签的PDF和源码,...

    麒麟系统QtCreator使用中文输入法的fcitx插件 麒麟系统QtCreator使用中文输入法的fcitx插件

    麒麟系统QtCreator使用中文输入法的fcitx插件 麒麟系统QtCreator使用中文输入法的fcitx插件 麒麟系统QtCreator使用中文输入法的fcitx插件

    qtcreator 中文版

    qtcreator中文版 中文语言包qtcreator _zh_CN.qm 复制到\share\qtcreator\translations

    QtCreator.rar

    Qt Creator 5.4 支持Windows、macOS、Linux等多种操作系统,使得开发者能构建一次,到处运行。这使得开发跨平台应用变得轻而易举。 6. **性能优化** 在5.4版本中,Qt Creator进一步优化了启动速度和内存占用,...

Global site tag (gtag.js) - Google Analytics