文章标签:模块

Zend框架的每个模块的布局设置-跟进

Steven ,2010年2月16日,星期二下午08:48

作为后续对我以前的帖子,每个模块的布局设置Zend框架 ,我已经更新了的代码需要很少的配置,然后前(不是,它需要更多的,在您的应用程序配置了几行!)
继续阅读Zend框架的每个模块的布局设置-按照“»

Zend框架的每个模块的设置

Steven ,日(星期五)2010年1月1日下午10:40

我已经创建了一个随访到这个职位需要很少的配置,请参阅模块的布局- Zend框架

当使用Zend框架的模块,其明显的,如果你正在运行的关闭同一个应用程序的各个(子)网站, 不一定要相同的布局脚本,每个部分。 我决定去以下站点结构:

  /应用程序
     /控制器
         ... ...
     /型号
     /模块
         /默认
             /控制器
             /布局
                 /脚本
             /意见
                 /脚本
         / anotherModule
             ... ...
     /脚本

问题是每个模块的基础上成立的布局脚本。 答案是通过使用一个动作助手。 每个模块的基础上设置的布局,包括三个步骤:

  1. 的application.ini(或类似的配置设置):
      admin.resources.layout.layoutPath = APPLICATION_PATH“/模块/ ADMIN /布局/脚本”
     default.resources.layout.layoutPath = APPLICATION_PATH“/模块/默认/布局/脚本”
     member.resources.layout.layoutPath = APPLICATION_PATH“/模块/会员/布局/脚本”
     affiliate.resources.layout.layoutPath = APPLICATION_PATH“/模块/子公司/布局/脚本” 
  2. 创建你的动作助手:
      <?PHP
     / **
      *每个模块的基础上设置的布局路径
      *
      * @作者:劳合社沃特金斯<lloyd@evilprofessor.co.uk>
      * _AT_自2010-01-01
      * /
    类Pro_Controller_Action_Helper_SetLayoutPath
        延伸Zend_Controller_Action_Helper_Abstract
     {
         / **
          *基于模块设置布局路径
          * /
        公共职能preDispatch()在
         {
        	模块= $> getRequest() - > getModuleName();
    
    	    如果($引导= $> getActionController()
    	                        - > getInvokeArg(“引导”)){
    
    	         $ CONFIG = $引导 - > getOptions();
    
    	         (使用isset($ CONFIG [模块] ['资源'] ['布局'] ['layoutPath'])){
    	            美元layoutPath =
    	                 配置[模块] ['资源'] ['布局'] ['layoutPath“];
    	             $> getActionController()
    	                  - > getHelper(“布局”)
    	                  - > setLayoutPath(元layoutPath);
    	         }
        	 }
         }
     } 
  3. 最后自举的动作助手:
     ... ...  / ** *设置每个模块的基础上,布局脚本* /保护功能_initLayoutHelper(){$ - >引导('frontController“);布局Zend_Controller_Action_HelperBroker:addHelper(新Pro_Controller_Action_Helper_SetLayoutPath());} .. 。 












全景主题 Themocracy

6访客在线
1位,5个机器人,0会员
今天最多访问:在17日上午6时54 UTC
这个月:在18-08-2011 17日上午6时54
今年:130于28-03-2011 10:40 PM UTC
所有时间:130于28-03-2011 10:40 PM UTC