Zend_Application-AvailableResources-Modules.xml 3.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!-- Reviewed: no -->
  3. <sect2 id="zend.application.available-resources.modules">
  4. <title>Zend_Application_Resource_Modules</title>
  5. <para>
  6. <classname>Zend_Application_Resource_Modules</classname> se utiliza
  7. para inicializar sus módulos de aplicación. Si su módulo tiene un
  8. archivo <code>Bootstrap.php</code> en su raíz, y contiene una clase
  9. llamada <code>Module_Bootstrap</code> (donde "Module" es el nombre del
  10. módulo), entonces usará esa clase para arrancar el módulo.
  11. </para>
  12. <para>
  13. Por defecto, se creará una instancia de
  14. <classname>Zend_Application_Module_Autoloader</classname> para el
  15. módulo, utilizando el nombre del módulo y del directorio para
  16. inicializarlo.
  17. </para>
  18. <note>
  19. <title>Dependencia de recursos del Front Controller</title>
  20. <para>
  21. El recurso Modules tiene una dependencia de
  22. <link linkend="zend.application.available-resources.frontcontroller">
  23. Front Controller resource</link>. Usted puede, por supuesto,
  24. proporcionar su propia sustitución de ese recurso mediante un
  25. recurso personalizado de la clase Front Controller o un método
  26. inicializador de la clase -- tan largo como se quiera siempre que
  27. el plugin del recurso de la clase termine en "Frontcontroller"
  28. o el método inicializador se llame "_initFrontController"
  29. (case insensible).
  30. </para>
  31. </note>
  32. <example id="zend.application.available-resources.modules.configExample">
  33. <title>Configurando Módulos</title>
  34. <para>
  35. Usted puede especificar una configuración específica de un mósulo
  36. utilizando el nombre del módulo como un prefijo/sub-sección en su
  37. archivo de configuración.
  38. </para>
  39. <para>
  40. Por ejemplo, supongamos que su aplicación tiene un mósulo "noticias".
  41. Los siguientes son ejemplos de INI y XML que muestran la
  42. configuración de recursos en ese módulo.
  43. </para>
  44. <programlisting role="ini"><![CDATA[
  45. [production]
  46. news.resources.db.adapter = "pdo_mysql"
  47. news.resources.db.params.host = "localhost"
  48. news.resources.db.params.username = "webuser"
  49. news.resources.db.params.password = "XXXXXXX"
  50. news.resources.db.params.dbname = "news"
  51. news.resources.layout.layout = "news.phtml"
  52. ]]></programlisting>
  53. <programlisting role="xml"><![CDATA[
  54. <?xml version="1.0"?>
  55. <config>
  56. <production>
  57. <news>
  58. <resources>
  59. <db>
  60. <adapter>pdo_mysql</adapter>
  61. <params>
  62. <host>localhost</host>
  63. <username>webuser</username>
  64. <password>XXXXXXX</password>
  65. <dbname>news</dbname>
  66. </params>
  67. <isDefaultAdapter>true</isDefaultAdapter>
  68. </db>
  69. </resources>
  70. </news>
  71. </production>
  72. </config>
  73. ]]></programlisting>
  74. </example>
  75. <example id="zend.application.available-resources.modules.retrieveBootstrapExample">
  76. <title>Recuperando el bootstrap de un módulo específico</title>
  77. <para>
  78. En ocasiones, puede que necesite para recuperar el objeto bootstrap
  79. de un módulo específico -- tal vez para ejecutar discretos
  80. métodos bootstrap ,o a recoger el cargador automático con el fin de
  81. configurarlo. Esto puede hacerse utilizando el método
  82. <code>getExecutedBootstraps()</code> de los recursos de Módulo.
  83. </para>
  84. <programlisting role="php"><![CDATA[
  85. $resource = $bootstrap->getPluginResource('modules');
  86. $moduleBootstraps = $resource->getExecutedBootstraps();
  87. $newsBootstrap = $moduleBootstraps['news'];
  88. ]]></programlisting>
  89. </example>
  90. </sect2>