Zend_Controller_Router_Route_Static
Die oben angeführten Beispiele verwenden alle dynamische Routen -- Routen die einem Pattern
entsprechen. Trotzdem wird manchmal eine spezielle Route in Stein gegossen, und das Starten
der Regular Expression Maschine wäre ein Overkill. Die Lösung zu dieser Situation ist die
Verwendung von statischen Routen:
'auth', 'action' => 'login')
);
$router->addRoute('login', $route);
]]>
Die obige Route passt zu einer URL von
http://domain.com/login, und leitet weiter zu
AuthController::loginAction().
Warnung: Statische Routen müssen vernüftige Standards enthalten
Da eine statische Route keinen Teil der URL an das Requestobjekt als
Parameter übergibt, muss man alle Parameter die für das Bearbeiten
eines Requests notwendig sind als Standards an die Route übergeben. Das unterdrücken der
Standardwerte von "controller" oder "action" kann zu unerwarteten Ergebnissen führen,
und wird dazu führen das der Request nicht bearbeitet werden kann.
Als Daumenregel sollte man immer jeden der folgenden Standardwerte anbieten:
controller
action
module (if not default)
Optional kann auch der "useDefaultControllerAlways" Parameter an den Frontcontroller
während des Bootstrappings übergeben werden:
setParam('useDefaultControllerAlways', true);
]]>
Trotzdem ist das als Workaround anzusehen; es ist immer besser vernünftige Standards
explizit zu definieren.