Karigi tagged: layoutPath

Zend Qafas Per Modulu settings bbażati

Billi , il-Ġimgħa 1 Jan 2010 22:40

Stajt ħolqot follow għal din il-kariga li teħtieġ konfigurazzjoni inqas, jekk jogħġbok ara Layout Modulu Ibbażat - Zend Qafas .

Meta jintuża l- qafas Zend ma moduli, ovvji tagħha li jekk int taħdem varji (sub-) siti off l-istess applikazzjoni ma neċessarjament jixtiequ l-istess skripts tqassim għal kull parti. I iddeċidew li jmorru ma 'l-istruttura tas-sit li ġej:

  / Applikazzjoni
     / Kontrolluri
         ...
     / Mudelli
     / Moduli
         / Nuqqas
             / Kontrolluri
             / Tqassim
                 / Skripts
             / Fehmiet
                 / Skripts
         / AnotherModule
             ...
     / Skripts

Il-problema kienet twaqqif-iskripts tqassim fuq bażi ta 'kull modulu. It-tweġiba daħal permezz użu ta 'helper' Azzjoni. Twaqqif-taqsim fuq bażi ta 'kull modulu jinvolvi tliet stadji:

  1. Application.ini (jew setup konfigurazzjoni simili):
      admin.resources.layout.layoutPath = APPLICATION_PATH "/ moduli / admin / presentazzjonijiet / skripts"
     default.resources.layout.layoutPath = APPLICATION_PATH "/ moduli / default / presentazzjonijiet / skripts"
     member.resources.layout.layoutPath = APPLICATION_PATH "/ moduli / membru / taqsim / skripts"
     affiliate.resources.layout.layoutPath = l APPLICATION_PATH "/ moduli / affiljat / taqsim / skripts" 
  2. Oħloq helper Azzjoni tiegħek:
      <? PHP
     / **
      * Settijiet-passaġġ tqassim fuq bażi ta 'kull modulu
      *
      * @ Awtur Lloyd Watkin <lloyd@evilprofessor.co.uk>
      * @ Peress 2010/01/01
      * /
     klassi Pro_Controller_Action_Helper_SetLayoutPath
         testendi Zend_Controller_Action_Helper_Abstract
     {
         / **
          * Settijiet tqassim triq ibbażati fuq modulu
          * /
         pubbliku funzjoni preDispatch ()
         {
        	 $ Modulu = $ dan-> getRequest () -> getModuleName ();
    
    	     jekk ($ = $ dan bootstrap-> getActionController ()
    	                        -> GetInvokeArg ("bootstrap")) {
    
    	         $ Konfigurazzjoni = $ bootstrap-> getOptions ();
    
    	         jekk (isset ($ konfigurazzjoni [$ modulu] ["riżorsi"] ["tqassim"] ["layoutPath"])) {
    	             $ LayoutPath =
    	                  [Modulu $] $ konfigurazzjoni ["riżorsi"] ["tqassim"] ["layoutPath"];
    	             $ Dan-> getActionController ()
    	                  -> GetHelper ("format")
    	                  -> SetLayoutPath ($ layoutPath);
    	         }
        	 }
         }
     } 
  3. U fl-aħħar boostrap-helper-azzjoni:
      ...
         / **
          * Twaqqaf skripts tqassim fuq bażi ta 'kull modulu
          * /
         protett funzjoni _initLayoutHelper ()
    	 {
    	     $ Dan> 'bootstrap ("frontController");
    	     $ Tqassim = Zend_Controller_Action_HelperBroker :: addHelper (
    	         ġdid Pro_Controller_Action_Helper_SetLayoutPath ());
    	 }
     ... 












Tema Panorama mill Themocracy

5 viżitaturi online issa
4 mistednin, 1 bots, 0 membri
Viżitaturi llum Max: 7 fil 12:01 am UTC
Dan ix-xahar: 18 fi 2012/07/05 UTC pm 04:35
Din is-sena: 69 fi 09:56 am UTC 27-02-2012
Il-ħin kollu: 130 fuq 28-03-2011 UTC pm 10:40