Posts tagged: layoutPath

Zend Framework Per-Moduli settings bazë

Nga , e premte Jan 1, 2010 10:40 pm

Unë kam krijuar një follow për këtë post që kërkon më pak konfigurim, ju lutem shikoni Layout Module Based - Zend Kornizë .

Kur përdorni kuadrin Zend me module, të dukshme e tij se në qoftë se ju xhironi ndryshme (sub-) faqet off të njëjtën kërkesë ju nuk shprehin domosdoshmërisht duan të njëjtat Scripts paraqitjen për çdo pjesë. Unë vendosa të shkoj me strukturën e faqes e mëposhtme:

  / Application
     / Kontrolluesit
         ...
     / Modele
     / Module
         / Default
             / Kontrolluesit
             / Faqosja
                 / Scripts
             / Views
                 / Scripts
         / AnotherModule
             ...
     / Scripts

Problemi u ngritjen Scripts paraqitjen në një bazë per-modul. Përgjigja erdhi përmes përdorimit të një Helper Veprimit. Ngritja Layouts në një bazë per-modul përfshin tre hapa:

  1. Application.ini (apo organizim të ngjashme konfigurimit):
     admin.resources.layout.layoutPath = APPLICATION_PATH "/ modules / admin / Layouts / scripts" default.resources.layout.layoutPath = APPLICATION_PATH "/ module / default / Layouts / scripts" member.resources.layout.layoutPath = APPLICATION_PATH "/ module / Anëtari / Layouts / scripts "affiliate.resources.layout.layoutPath = APPLICATION_PATH" / modules / Filialin / Layouts / scripts " 
  2. Krijo Helper tuaj të Veprimit:
      <? Php
     / **
      * Përcakton shtegun e layout në një bazë per-modul
      *
      * @ Author Lloyd Watkin <lloyd@evilprofessor.co.uk>
      * @ Prej 2010-01-01
      * /
     klasë Pro_Controller_Action_Helper_SetLayoutPath
         shtrihet Zend_Controller_Action_Helper_Abstract
     {
         / **
          * Vë rruga paraqitjen bazuar në modulin
          * /
         preDispatch publik funksion ()
         {
        	 $ Moduli = $ this-> getRequest () -> getModuleName ();
    
    	     if ($ bootstrap = $ this-> getActionController ()
    	                        -> GetInvokeArg ('bootstrap')) {
    
    	         $ Config = $ bootstrap-> getOptions ();
    
    	         if (isset ($ config [$ modul] ['burime'] ['faqosje'] ['layoutPath'])) {
    	             $ LayoutPath =
    	                  [Moduli $] $ config ['burime'] ['paraqitjen'] ['layoutPath'];
    	             $ Kjo-> getActionController ()
    	                  -> GetHelper ('faqosje')
    	                  -> SetLayoutPath ($ layoutPath);
    	         }
        	 }
         }
     } 
  3. Dhe së fundi boostrap e ndihmëtar të veprimit:
      ...
         / **
          * Vë up Scripts paraqitjen në një bazë per-modul
          * /
         mbrojtur funksion _initLayoutHelper ()
    	 {
    	     $ Kjo-> bootstrap ('frontController');
    	     $ Layout = Zend_Controller_Action_HelperBroker :: addHelper (
    	         ri Pro_Controller_Action_Helper_SetLayoutPath ());
    	 }
     ... 












Theme nga Panorama Themocracy

12 vizitorët në linjë tani
8 mysafirë, 4 bots, 0 anëtarë
Vizitorë Max sot: 12 at 01:24 am UTC
Këtë muaj: 26 në 04-04-2012 UTC 10:27 PM
Këtë vit: 69 në 27-02-2012 09:56 am UTC
Gjithë koha: 130 në 28-03-2011 UTC 10:40 PM