Ametikohad tagged: moodul

Zend Framework Per Module Layout Settings - Follow Up

Autor , teisipäev 16. veebruar 2010 20:48

Selle jätkuna mu eelmine postitus per moodul põhinev skeem seaded ja Zend Framework , olen uuendatud koodi nõuda vähem konfiguratsiooni siis enne (mitte et see vajalik rohkem kui paar rida oma rakenduse konfiguratsiooni!).
Jätka lugemist "Zend Framework Per Module Layout Settings - Follow Up" »

Zend Framework Per-moodul põhineb seaded

Autor , reede 1. jaanuar 2010 22:40

Olen loonud Järg sellele ametikohale, mis nõuab vähem konfiguratsiooni leiate moodul põhineb paigutus - Zend Framework .

Kui kasutate Zend Framework moodulite, selle selge, et kui näed erinevate (ala-) saite välja, et sama taotlust te ei pruugi taha sama kujundus skriptid iga osa. Ma otsustasin minna koos järgmiste saidi struktuuri:

  / Application
     / Kontrollerid
         ...
     / Mudelid
     / Modules
         / Default
             / Kontrollerid
             / Kujundus
                 / Scripts
             / Seisukohad
                 / Scripts
         / AnotherModule
             ...
     / Scripts

Probleem oli luua paigutuse skripte igale moodulile eraldi. Vastus tuli läbi kasutades Action Helper. Loomise plaanide kohta igale moodulile eraldi kolmeetapilise protsessi:

  1. Application.ini (või sarnase konfiguratsiooni häälestus):
      admin.resources.layout.layoutPath = APPLICATION_PATH "/ modules / admin / skeeme / scripts"
     default.resources.layout.layoutPath = APPLICATION_PATH "/ modules / default / skeeme / scripts"
     member.resources.layout.layoutPath = APPLICATION_PATH "/ modules / member / skeeme / scripts"
     affiliate.resources.layout.layoutPath = APPLICATION_PATH "/ modules / affiliate / skeeme / scripts" 
  2. Loo Action Helper:
      <? Php
     / **
      * Määrab paigutus tee, igale moodulile eraldi
      *
      * @ Author Lloyd Watkin <lloyd@evilprofessor.co.uk>
      * @ Alates 2010/01/01
      * /
     klassi Pro_Controller_Action_Helper_SetLayoutPath
         laiendab Zend_Controller_Action_Helper_Abstract
     {
         / **
          * Komplektid paigutus tee põhineb moodul
          * /
         avalikke ülesandeid preDispatch ()
         {
        	 $ Module = $ this-> getRequest () -> getModuleName ();
    
    	     if ($ bootstrap = $ this-> getActionController ()
    	                        -> GetInvokeArg (bootstrap ")) {
    
    	         $ Config = $ bootstrap-> getOptions ();
    
    	         if (isset ($ config [$ module] ['ressursid'] ['paigutus'] ['layoutPath'])) {
    	             $ LayoutPath =
    	                  $ Config [$ module] ['ressursid'] ['paigutus'] ['layoutPath'];
    	             $ This-> getActionController ()
    	                  -> GetHelper (kujundus)
    	                  -> SetLayoutPath ($ layoutPath);
    	         }
        	 }
         }
     } 
  3. Ja lõpuks boostrap tegevus helper:
      ...
         / **
          * Rajab paigutus skripte igale moodulile eraldi
          * /
         kaitsealade funktsiooni _initLayoutHelper ()
    	 {
    	     $ This-> bootstrap (frontController ');
    	     $ Paigutus = Zend_Controller_Action_HelperBroker :: addHelper (
    	         uus Pro_Controller_Action_Helper_SetLayoutPath ());
    	 }
     ... 












Panorama Theme poolt Themocracy

7 külalist nüüd
5 külalist, 2 eest, 0 liiget
Max Külastusi täna: 11 at 09:24 am UTC
Sel kuul: 18 kell 2012/07/05 04:35 UTC
Sel aastal: 69 at 27-02-2012 09:56 am UTC
Kogu aeg: 130 at 28-03-2011 10:40 UTC