/documentation/manual/de/module_specs/Zend_Application-AvailableResources-Frontcontroller.xml
https://github.com/decaoz/zf1 · XML · 154 lines · 131 code · 21 blank · 2 comment · 0 complexity · 5c1ae44d1000cb3ccc8b796631359edb MD5 · raw file
- <?xml version="1.0" encoding="UTF-8"?>
- <!-- EN-Revision: 24249 -->
- <!-- Reviewed: no -->
- <sect2 id="zend.application.available-resources.frontcontroller">
- <title>Zend_Application_Resource_Frontcontroller</title>
- <para>
- Die warscheinlich am meisten verwendete Ressource die man mit
- <classname>Zend_Application</classname> verwenden wird, ist die Front Controller Ressource,
- die eine Möglichkeit bietet den <classname>Zend_Controller_Front</classname> zu
- konfigurieren. Diese Ressource bietet die Möglichkeit verschiedenste Front Controller
- Parameter zu setzen, Plugins zu spezifizieren die initialisiert werden sollen, und vieles
- mehr.
- </para>
- <para>
- Sobald Sie initialisiert wurde, fügt die Ressource die <varname>$frontController</varname>
- Eigenschaft vom Bootstrap in die <classname>Zend_Controller_Front</classname> Instanz hinzu.
- </para>
- <para>
- Die folgenden Konfigurationsschlüssel sind vorhanden, und sind abhängig von der
- Groß- oder Kleinschreibung:
- </para>
- <itemizedlist>
- <listitem>
- <para>
- <emphasis><property>controllerDirectory</property></emphasis>: Entweder ein
- Stringwert der ein einzelnes Controller Verzeichnis spezifiziert, oder ein Array von
- Modul und Controller Verzeichnis Paaren.
- </para>
- </listitem>
- <listitem>
- <para>
- <emphasis><property>moduleControllerDirectoryName</property></emphasis>: Ein
- Stringwert der auf ein Unterverzeichnis unter einem Modul zeigt, das Controller
- enthält.
- </para>
- </listitem>
- <listitem>
- <para>
- <emphasis><property>moduleDirectory</property></emphasis>: Verzeichnis in dem Module
- gefunden werden können.
- </para>
- </listitem>
- <listitem>
- <para>
- <emphasis><property>defaultControllerName</property></emphasis>: Basisname des
- Standard Controllers (normalerweise "index").
- </para>
- </listitem>
- <listitem>
- <para>
- <emphasis><property>defaultAction</property></emphasis>: Basisname der Standard
- Aktion (normalerweise "index").
- </para>
- </listitem>
- <listitem>
- <para>
- <emphasis><property>defaultModule</property></emphasis>: Basisname des Standard
- Moduls (normalerweise "default").
- </para>
- </listitem>
- <listitem>
- <para>
- <emphasis><property>baseUrl</property></emphasis>: Explizite Basis
- <acronym>URL</acronym> zur Anwendung (normalerweise automatisch erkannt).
- </para>
- </listitem>
- <listitem>
- <para>
- <emphasis><property>plugins</property></emphasis>: Array von Front Controller Plugin
- Klassennamen. Die Ressource wird jede Klasse instanziieren (ohne Contructor
- Argumente) und die Instanz dann mit dem Front Controller registrieren. Wenn man ein
- Plugin mit einem speziellen Stackindex registriert muss man ein Array mit den zwei
- Schlüsseln <property>class</property> und <property>stackIndex</property> angeben.
- </para>
- </listitem>
- <listitem>
- <para>
- <emphasis><property>params</property></emphasis>: Array von Schlüssel und Wert
- Paaren die mit dem Front Controller registriert werden sollen.
- </para>
- </listitem>
-
- <listitem>
- <para>
- <emphasis><property>returnresponse</property></emphasis>: Ob das Response Objekt
- nach dem Dispatchen des Front Controllers zurückgegeben wird oder nicht. Der Wert
- sollte ein Boolean sein; standardmäßig ist er deaktiviert.
- </para>
- </listitem>
- </itemizedlist>
- <para>
- Wenn ein Schlüssel übergeben wird der nicht erkannt wird, wird dieser als Parameter beim
- Front Controller registriert, indem er an <methodname>setParam()</methodname> übergeben
- wird.
- </para>
- <example id="zend.application.available-resources.frontcontroller.configExample">
- <title>Beispiel der Konfiguration einer Front Controller Ressource</title>
- <para>
- Anbei ist ein Beispiel eines <acronym>INI</acronym> Abschnitts der zeigt wie die Front
- Controller Ressource konfiguriert werden kann.
- </para>
- <programlisting language="ini"><![CDATA[
- [production]
- resources.frontController.controllerDirectory = APPLICATION_PATH "/controllers"
- resources.frontController.moduleControllerDirectoryName = "actions"
- resources.frontController.moduleDirectory = APPLICATION_PATH "/modules"
- resources.frontController.defaultControllerName = "site"
- resources.frontController.defaultAction = "home"
- resources.frontController.defaultModule = "static"
- resources.frontController.baseUrl = "/subdir"
- resources.frontController.plugins.foo = "My_Plugin_Foo"
- resources.frontController.plugins.bar = "My_Plugin_Bar"
- resources.frontController.plugins.baz.class = "My_Plugin_Baz"
- resources.frontController.plugins.baz.stackIndex = 123
- resources.frontController.returnresponse = 1
- resources.frontController.env = APPLICATION_ENV
- ; Das folgende verweist auf:
- ; Zend_Controller_Action_HelperBroker::addPath('Helper_Path', $helperPrefix);
- resources.frontController.actionHelperPaths.HELPER_Prefix = "My/Helper/Path"
- ]]></programlisting>
- </example>
- <example id="zend.application.available-resources.frontcontroller.propertyExample">
- <title>Empfangen des Front Controllers im eigenen Bootstrap</title>
- <para>
- Sobald die Front Controller Ressource initialisiert wurde, kann die Front Controller
- Instanz über die <varname>$frontController</varname> Eigenschaft der Bootstraps geholt
- werden.
- </para>
- <programlisting language="php"><![CDATA[
- $bootstrap->bootstrap('frontController');
- $front = $bootstrap->frontController;
- ]]></programlisting>
- </example>
- </sect2>