Άρθρα με ετικέτα: module

Zend-πλαίσιο για κάθε ενότητα Ρυθμίσεις Διάταξη - Παρακολούθηση

Με , Τρίτη 16 Φεβρουαρίου 2010 20:48

Ως συνέχεια στην προηγούμενη θέση μου σχετικά με ανά μονάδα με βάση τις ρυθμίσεις διάταξης για την Zend-πλαίσιο , έχω ενημερώσει τον κώδικα που θα απαιτούν λιγότερη ρύθμιση, στη συνέχεια, πριν από (όχι ότι απαιτείται περισσότερο από μερικές γραμμές στην διαμόρφωση της εφαρμογής σας!).
Συνέχεια ανάγνωση "Zend πλαισίου ανά Ρυθμίσεις Διάταξη Ενότητα - Παρακολούθηση» »

Zend-πλαίσιο ανά μονάδα με βάση τις ρυθμίσεις

Με , Παρασκευή 1 Ιανουαρίου 2010 22:40

Έχω δημιουργήσει ένα follow-σε αυτήν την ανάρτηση η οποία απαιτεί λιγότερη ρύθμιση, δείτε Ενότητα βάση Διάταξη - Zend-πλαίσιο .

Κατά τη χρήση του πλαισίου Zend με modules, προφανές, ότι εάν τρέχετε διάφορες (υπο-) περιοχές από την ίδια αίτηση δεν θέλετε κατ 'ανάγκην το ίδιο scripts διάταξη για κάθε τμήμα. Αποφάσισα να πάω με την ακόλουθη δομή ιστοσελίδα:

  / Εφαρμογή
     / Ελεγκτές
         ...
     / Μοντέλα
     / Modules
         / Default
             / Ελεγκτές
             / Διάταξη
                 / Scripts
             / Απόψεων
                 / Scripts
         / AnotherModule
             ...
     / Scripts

Το πρόβλημα ήταν για τη δημιουργία της scripts διάταξη για κάθε μία μονάδα βάσης. Η απάντηση ήρθε μέσα από τη χρήση ενός Helper δράσης. Ρύθμιση του διατάξεις για κάθε μία μονάδα βάσης περιλαμβάνει τρία βήματα:

  1. Application.ini (ή παρόμοια ρύθμιση παραμέτρων):
      admin.resources.layout.layoutPath = APPLICATION_PATH "/ modules / admin / layouts / scripts"
     default.resources.layout.layoutPath = APPLICATION_PATH "/ modules / default / layouts / scripts"
     member.resources.layout.layoutPath = APPLICATION_PATH "/ modules / μέλος / layouts / scripts"
     affiliate.resources.layout.layoutPath = APPLICATION_PATH "/ modules / θυγατρικών / layouts / scripts" 
  2. Δημιουργία Helper δράσης σας:
      <? Php
     / **
      * Ορίζει τη διαδρομή διάταξη για κάθε μία μονάδα βάσης
      *
      * @ Συγγραφέας Lloyd Watkin <lloyd@evilprofessor.co.uk>
      * @ Από 01/01/2010
      * /
     τάξη Pro_Controller_Action_Helper_SetLayoutPath
         εκτείνεται Zend_Controller_Action_Helper_Abstract
     {
         / **
          * Σετ μονοπάτι διάταξη που βασίζεται στην Ενότητα
          * /
         δημόσια preDispatch λειτουργία ()
         {
        	 $ Module = $ this-> getRequest () -> getModuleName ()?
    
    	     if ($ bootstrap = $ this-> getActionController ()
    	                        -> GetInvokeArg («εκκίνησης»)) {
    
    	         $ Config = $ bootstrap-> getOptions ()?
    
    	         εάν (isset ($ config [$ ενότητας] ['πόρων'] ['διάταξη'] ['layoutPath'])) {
    	             $ LayoutPath =
    	                  $ Config [$ ενότητας] ['πόρων'] ['διάταξη'] ['layoutPath']?
    	             $ This-> getActionController ()
    	                  -> GetHelper («διάταξη»)
    	                  -> SetLayoutPath ($ layoutPath)?
    	         }
        	 }
         }
     } 
  3. Και boostrap, τέλος, η βοηθός δράσης:
      ...
         / **
          * Ρυθμίζει σενάρια διάταξη για κάθε μία μονάδα βάσης
          * /
         προστατεύεται λειτουργία _initLayoutHelper ()
    	 {
    	     $ This-> bootstrap («frontController ')?
    	     $ Layout = Zend_Controller_Action_HelperBroker:: addHelper (
    	         νέα Pro_Controller_Action_Helper_SetLayoutPath ())?
    	 }
     ... 












Θέμα Πανόραμα από Themocracy

8 επισκέπτες online τώρα
6 άτομα, 2 bots, 0 μέλη
Max επισκέπτες σήμερα: 18 στις 12:19 μ.μ. UTC
Αυτό το μήνα: 23 στις 24-08-2011 5:40 π.μ. UTC
Αυτό το έτος: 130 στις 28-03-2011 22:40 UTC
Όλα ώρα: 130 στις 28-03-2011 22:40 UTC