- 浏览: 35889 次
- 性别:
- 来自: 安徽省
-
最近访客 更多访客>>
文章分类
最新评论
-
Neao:
不错,确实是这样,非常感谢。
在下补充一下安装过程中可能出 ...
源码安装Mysql,补装innodb引擎方法
你可能注意到在前面一节提到视图脚本是 HTML 片断——不是完整的网页。这是出于设计的需要;我们希望我们的行为返回的内容只和行为本身有关,而不是整个应用程序。
现在我们必须把得到的内容合成到一个完整的 HTML 网页。我们也想为应用程序创建一个统一的外表和风格。我们将使用一个全站模板来完成这些任务。
Zend Framework 应用模板有两种设计模式:Two Step View 和 Composite View。Two Step View 通常和 Transform View 有关,基本的思想是,你的应用程序的视图创建一个表现,然后为了最后的转换(for final transformation)注入到主模板中。而 Composite View 模式则处理一个由一个或者更多个的原子,应用程序视图组合而成的视图。
在 Zend Framework 中,Zend_Layout 组合了这些模式的思想。不同于每一个行为视图需要包括全站的东西,他们可以简单的关注它们自己的责任。
偶尔的,然而,你可能需要应用程序方面的信息出现在你的全站视图脚本中,幸运的是,Zend Framework 提供了大量的视图占位符(placeholder)来允许你从你的行为视图脚本提供这样的信息(应用程序方面的信息 application-specific information)。
为了开始使用 Zend_Layout,首先我们需要通知我们的 bootstrap 来使用 Layout 资源(Bootstrap 类定义了什么资源和组件将要初始化。)。这可以通过使用 zf enable layout 命令来完成:
% zf enable layout
Layouts have been enabled, and a default layout created at application/layouts/scripts/layout.phtml
A layout entry has been added to the application config file.
正如命令行提醒的那样,application/configs/application.ini 被更新了,现在 production 部分包括了以下代码:
; application/configs/application.ini
; Add to [production] section:
resources.layout.layoutPath = APPLICATION_PATH "/layouts/scripts"
最后的 INI 文件应该看起来是这样的:
; application/configs/application.ini
[production]
; PHP settings we want to initialize
phpSettings.display_startup_errors = 0
phpSettings.display_errors = 0
includePaths.library = APPLICATION_PATH "/../library"
bootstrap.path = APPLICATION_PATH "/Bootstrap.php"
bootstrap.class = "Bootstrap"
appnamespace = "Application"
resources.frontController.controllerDirectory = APPLICATION_PATH "/controllers"
resources.frontController.params.displayExceptions = 0
resources.layout.layoutPath = APPLICATION_PATH "/layouts/scripts"
[staging : production]
[testing : production]
phpSettings.display_startup_errors = 1
phpSettings.display_errors = 1
[development : production]
phpSettings.display_startup_errors = 1
phpSettings.display_errors = 1
这些指令告诉你的应用程序到 application/layouts/scripts 中查找模板视图脚本。如果你检查你的目录树,你将发现这个目录已经为你创建好了,同时带有 layout.phtml 这个文件。
我们也想确保针对我们的应用程序,我们有一个 XHTML DocType 声明。为了做到这个,我们需要添加一个资源到我们的 bootstrap。
添加一个资源到 bootstrap 的最简单的方法是创建一个以 _init 短语开头的私有方法。在这个例子中,我们想要初始化 doctype,所以我们在我们的 bootstrap 类中创建一个 _initDoctype() 方法:
- // application/Bootstrap.php
- class Bootstrap extends Zend_Application_Bootstrap_Bootstrap
- {
- protected function _initDoctype()
- {
- }
- }
在这个方法内,我们需要提示视图来使用合适的 doctype。但是视图对象从哪里来?简单的方案是,初始化视图(View)资源;一旦我们完成,我们可以从 bootstrap 中扒下视图对象然后使用它。
为了初始化视图资源,把以下代码添加到你的 application/configs/applicationn.ini 文件中,在 production 部分下:
; application/configs/application.ini
; Add to [production] section:
resources.view[] =
这将告诉我们初始化视图但是没有选项([] 提示 view 键是一个数组,我们什么都没有传递给它)。
现在我们有了一个视图,让我们更新我们的 _initDoctype() 方法。在它里面,我们首先确保视图资源已经在运行,捕获视图对象,然后配置它:
- // application/Bootstrap.php
- class Bootstrap extends Zend_Application_Bootstrap_Bootstrap
- {
- protected function _initDoctype()
- {
- $this->bootstrap('view');
- $view = $this->getResource('view');
- $view->doctype('XHTML1_STRICT');
- }
- }
现在我们已经实例化了 Zend_Layout 并且设置了 Doctype,让我们创建我们的全站模板:
- <!-- application/layouts/scripts/layout.phtml -->
- <?php echo $this->doctype() ?>
- <html xmlns="http://www.w3.org/1999/xhtml">
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <title>Zend Framework Quickstart Application</title>
- <?php echo $this->headLink()->appendStylesheet('/css/global.css') ?>
- </head>
- <body>
- <div id="header" style="background-color: #EEEEEE; height: 30px;">
- <div id="header-logo" style="float: left">
- <b>ZF Quickstart Application</b>
- </div>
- <div id="header-navigation" style="float: right">
- <a href="<?php echo $this->url(
- array('controller'=>'guestbook'),
- 'default',
- true) ?>">Guestbook</a>
- </div>
- </div>
- <?php echo $this->layout()->content ?>
- </body>
- </html>
我们使用 layout() 视图帮助器捕获应用程序的内容,同时访问 content 键。如果你愿意的话,你可以呈现其它的片断,但在大多数情况下,这是所需的全部了。
同时注意 headLink() 占位符的使用。这是为生成 HTML <link> 元素的简单方式,同时还可以在你的应用程序内跟踪它们。如果你需要增加额外的 CSS 样式表来支持一个单独的行为,你可以这样做,并确保它会在最后的呈现页面中出现。
注意,检查
现在打开 http://localhost 并检查源代码,你应该看见你的 XHTML 头部,头部,标题和正文部分。
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"><html xmlns="http://www.w3.org/1999.xhtml">
- <head>
- <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
- <title>Zend Framework Quickstart Application</title>
- <link href="/css/global.css" media="screen" rel="stylesheet" type="text/css" /></head>
- <body>
- <div id="header" style="background-color: #EEEEEE; height: 30px;">
- <div id="header-logo" style="float: left">
- <b>ZF Quickstart Application</b>
- </div>
- <div id="header-navigation" style="float: right">
- <a href="/guestbook">Guestbook</a>
- </div>
- </div>
- <style>
- a:link,
- a:visited
- {
- color: #0398CA;
- }
- span#zf-name
- {
- color: #91BE3F;
- }
- div#welcome
- {
- color: #FFFFFF;
- background-image: url(http://framework.zend.com/images/bkg_header.jpg);
- width: 600px;
- height: 400px;
- border: 2px solid #444444;
- overflow: hidden;
- }
- div#more-information
- {
- background-image: url(http://framework.zend.com/images/bkg_body-bottom.gif);
- height: 100%;
- }
- </style>
- <center>
- <div id="welcome">
- <br />
- <h1>Welcome to the <span id="zf-name">Zend Framework!</span></h1>
- <h3>This is your project's main page</h3><br /><br />
- <h4><a href="zf.html">click here</a></h4>
- <div id="more-information">
- <br />
- <img src="http://framework.zend.com/images/PoweredBy_ZF_4LightBG.png" /><br /><br />
- Helpful Links: <br />
- <a href="http://framework.zend.com/">Zend Framework Website</a> |
- <a href="http://framework.zend.com/manual/en/">Zend Framework Manual</a>
- </div>
- </div>
- </center>
- </body>
- </html>
发表评论
-
理解和使用 Zend 表单装饰器(一)
2010-07-23 20:06 894目录 理解和使用Zend表单装饰器:介绍 装饰器基础 装 ... -
开始使用 Zend_View 占位符
2010-07-22 18:36 1241目录 Zend_View 占位符:介绍 占位符的基本使用 ... -
开始使用 Zend_Layout
2010-07-20 19:44 1240目录 Zend_Layout介绍 使用Zend_Layou ... -
Zend Framework中的插件(Learning Zend Framework翻译3)
2010-07-20 16:19 1015目录 介绍 使用插件 结论 介绍Zend Framework ... -
在Zend Framework中自动加载(Learning Zend Framework翻译2)
2010-07-20 15:40 2912目录 介绍 目标与设计 ... -
Zend Framework 1.10.4手册(ZF的快速启动五)
2010-07-20 14:23 1287为了使我们的留言本有用,我们需要一个可以提交新条目的表单。 ... -
Zend Framework 1.10.4手册(ZF的快速启动四)
2010-07-20 13:05 1808在我们开始之前,让我们思考这样一些问题:这些类将放在什么地方 ... -
Zend Framework 1.10.4手册(ZF的快速启动二)
2010-07-19 11:27 1782为了创建您的项目 ... -
Zend Framework 1.10.4手册(ZF的快速启动一)
2010-07-19 11:20 1328Zend Framework Zend Framework ... -
Zend_Application
2010-07-15 11:13 1186注:适合ZF1.10 Zend_Appl ...
相关推荐
"ZendFramework-1.10.4-minimal" 这个标题表明我们正在处理的是 Zend Framework 的一个特定版本,即1.10.4,并且是精简版(minimal)。这意味着它可能包含了框架的核心组件,但可能去除了某些非必要的或附加的模块,...
最新手册针对的是 Zend Framework 1.10.4 版本,这个版本包含了多项改进和优化,确保了框架的稳定性和性能。 **主要组件** 1. **控制器(Controllers)**:在 MVC 模式中,控制器接收用户请求,处理业务逻辑,并...
6. 版本控制:HDF5-1.10.4是HDF5的一个特定版本,它可能引入了新的特性和修复了一些已知问题。例如,此版本可能提高了性能、增强了稳定性或添加了对新硬件和操作系统的支持。 在机器学习领域,如安装Caffe这样的...
总结,jQuery UI 1.10.4是一个强大而全面的前端UI框架,它提供的组件丰富多样,易用性强,能够帮助开发者快速构建功能丰富的交互式Web应用。通过熟练掌握jQuery UI,开发者可以大大提高工作效率,提升用户界面的用户...
而jQuery UI则是jQuery的一个扩展,提供了一系列用户界面组件,使得开发者能够快速构建交互性强、用户体验良好的网页应用。本文将深入探讨jQuery 2.1.0版本和jQuery UI 1.10.4版本的主要特性和功能。 首先,让我们...
"dojo-release-1.10.4"是Dojo框架的一个稳定版本,发布于2015年,它提供了大量的功能和改进,以支持开发人员构建高效、响应式的网页应用。 1. **Dojo核心模块**:Dojo的核心模块包括`dojo/_base`,它包含了基本的...
这个名为 "jquery-ui-1.10.4.custom" 的压缩包文件,很显然是一个自定义版本的 jQuery UI,版本号为 1.10.4。在本文中,我们将深入探讨 jQuery UI 的核心功能、使用场景以及其自定义版本的特性。 ### jQuery UI 的...
jquery-ui-1.10.4.min.js下载
这种数据结构使得Numpy能够快速执行向量、矩阵和数组操作,极大地提高了计算速度。 Numpy提供了丰富的数学函数库,如四则运算、三角函数、指数和对数函数、统计函数等,可以直接作用于ndarray上,无需循环。例如,...
《jQuery UI 1.10.4:深入解析与应用》 jQuery UI 是一个基于 jQuery 库的强大且灵活的用户界面工具集,它为开发者提供了丰富的组件和交互效果,极大地简化了网页界面的设计和开发。在本文中,我们将深入探讨 ...
当服务出现故障时,Consul 可以快速识别并通知系统,避免了故障扩散。 **Key/Value 存储** Consul 内置了一个简单的 Key/Value 存储,可用于存储和检索配置信息。这种分布式的 KV 存储允许开发者以集中式的方式管理...
gstreamer1-plugins-bad-free-1.10.4-3.el7.i686.rpm
"Viewer.js v1.10.4" 是一个专门用于Web前端的图片查看器库,主要针对PC和H5移动端的用户体验设计。该版本号表示这是Viewer.js的1.10.4次更新,通常意味着它包含了一些修复、优化或者新功能的添加。 在JavaScript的...
jquery-ui-v1.10.4.js.这个有用到的就不必说了.加点资源分希望大家能理解
《jQuery UI 1.10.4 自定义版本详解》 jQuery UI 是一个基于 jQuery JavaScript 库的可扩展用户界面库。它提供了多种可重用的组件,包括对话框(Dialog)、滑块(Slider)、日期选择器(Datepicker)和许多其他交互...
TortoiseSVN-1.10.3.28489-x64-svn-1.10.4
numpy-1.10.4.tar.gz
jquery-ui-v1.10.4.css.必备资源.加点资源分希望大家能理解
最新版的HDF5源代码,适用于所有平台,NetCDF开发需要使用到该压缩包。