Zend Creat-Modúl bunaithe suímh Per

De réir Watkin Lloyd Steven , Dé hAoine 1 Eanáir, 2010 22:40

Mé chruthaigh follow leis an bpost seo a éilíonn ar chumraíocht níos lú, féach Modúl Bunaithe Leagan Amach - Creat Zend .

Nuair a bheidh ag baint úsáide as an gcreat Zend le modúil, a soiléir go má tá tú ag rith éagsúla (fo-) láithreáin amach an t-iarratas céanna, ní gá gur mhaith leat an gcéanna scripteanna a leagan amach le haghaidh gach cuid. Bheartaigh mé dul leis an struchtúr an tsuímh seo a leanas:

  / Iarratais
     / Rialtóirí
         ...
     / Samhlacha
     / Modúil
         / Default
             / Rialtóirí
             / Leagan amach
                 / Scripteanna
             / Tuairimí
                 / Scripteanna
         / AnotherModule
             ...
     / Scripteanna

An fhadhb a bhí ar bun na scripteanna a leagan amach ar bhonn per-modúl. An freagra a tháinig trí úsáid a bhaint as Helper Gníomhaíochta. Bunú an leagan amach ar bhonn per-mhodúl trí chéim i gceist:

  1. Application.ini (nó thus cumraíocht den chineál céanna):
     admin.resources.layout.layoutPath = APPLICATION_PATH "/ modúil / admin / leagan amach / scripteanna" default.resources.layout.layoutPath = APPLICATION_PATH "/ modúil / default / leagan amach / scripteanna" member.resources.layout.layoutPath = APPLICATION_PATH "/ modúil / chomhalta / leagan amach / scripteanna "affiliate.resources.layout.layoutPath = APPLICATION_PATH" / modúil / cleamhnaithe / leagan amach / scripteanna " 
  2. Cruthaigh do Gníomh Helper:
      <? Php
     / **
      * Socraigh an cosán a leagan amach ar bhonn per-mhodúl
      *
      * @ T-údar Lloyd Watkin <lloyd@evilprofessor.co.uk>
      * @ Ó 2010/01/01
      * /
     Pro_Controller_Action_Helper_SetLayoutPath rang
         Síneann Zend_Controller_Action_Helper_Abstract
     {
         / **
          * Cosán leagan amach Seiteanna atá bunaithe ar an modúl
          * /
         preDispatch feidhm phoiblí ()
         {
        	 $ Modúl = $ seo getRequest>-() -> getModuleName ();
    
    	     más rud é (= bootstrap $ $ seo getActionController>-()
    	                        -> GetInvokeArg ('bootstrap')) {
    
    	         $ Cumraíochta = $ getOptions bootstrap-> ();
    
    	         más rud é (isset ($ config ['leagan'] [$ modúl] ['n-acmhainní'] ['layoutPath'])) {
    	             $ LayoutPath;
    	                  $ Cumraíochta [$ modúl] ['leagan'] ['n-acmhainní'] ['layoutPath'];
    	             getActionController $ seo>-()
    	                  -> GetHelper ('leagan')
    	                  - SetLayoutPath> ($ layoutPath);
    	         }
        	 }
         }
     } 
  3. Agus deireadh an cúntóir boostrap gníomhaíochta:
      ...
         / **
          * Socraigh suas le scripteanna a leagan amach ar bhonn per-mhodúl
          * /
         _initLayoutHelper feidhm chosanta ()
    	 {
    	     $ Seo>-bootstrap ('frontController');
    	     $ Leagan amach = Zend_Controller_Action_HelperBroker:: addHelper (
    	         nua Pro_Controller_Action_Helper_SetLayoutPath ());
    	 }
     ... 

4 freagairtí ar "Zend Réime socruithe Modúl Per-bhunaithe"

  1. Behrang a deir:

    Dia duit go raibh maith agat as do chuidiú chéad teagaisc ach inis dom nuair a chruthú mé cúntóir gníomhaíochta le ainm comhaid medicine?
    behrang

  2. Dia duit Behrang, a chruthú ar an cúntóir gníomh le cibé ainm is mian leat, tá mé féin mo 'leabharlann' le ainmspás 'Pro'. D'fhéadfadh tú díreach mar glaoch go héasca ar an rang 'SetLayoutPath' agus é a chur mar a bhforáiltear a bhí riamh is mian leat, is féidir an cód a aimsiú agus a leathnú tú na ranganna ag teastáil

  3. Deir kanth shashi:

    Dia duit, iam mheascadh le bunachar sonraí a bhunú socruithe modúl ar leith a dhéanann duine ar bith a bhfuil smaointe acu ...?

  4. Sílim go bhféadfadh sé seo a bhaint amach go héasca usign an bpatrún thuas. Gcéad dul síos, roghanna a chruthú i do chomhad INI feadh na comhaid seo a leanas:

    moduleName.db.user; "
    moduleName.db.password; "
    moduleName2.db.user; "
    ... Srl ...

    Ansin ghiniúint ach do nasc bhunachar sonraí mar a fheiceann tú cuí (Zend_Db:: monarcha () nó a leithéid) agus é a stash amach sa chlár nó é mar a leagtar ar an adapter réamhshocrú ag baint úsáide as Zend_Db_Table (Zend_Db_Table:: setDefaultAdapter ()).

Leave a Reply













Lánléargas Téama Themocracy

5 cuairteoirí ar líne anois
3 aíonna, 2 bots, 0 baill
Tá 22 ag 12:30 UTC: Max cuairteoirí an lae inniu
An mhí seo: 22 ag 2011/08/06 12:30 UTC
I mbliana: 130 ag 28-03-2011 22:40 UTC
Gach uair: 130 ag 28-03-2011 22:40 UTC