Zend URL -Helfer und benutzerdefinierte Routen?
-
14-10-2019 - |
Frage
Ich kann das nicht herausfinden. Wie verwenden Sie den URL -Helfer mit benutzerdefinierten Routen?
Ich habe eine Methode in meinem users
Controller gerufen edit
Und ich habe eine benutzerdefinierte Route dafür, damit sie über Domain.com/setings (anstelle von domain.com/users/edit) aufgerufen werden kann)
Wenn ich den URL -Helfer auf diese Weise benutze:
<li><a href="<?php echo $this->url(array('controller' => '', 'action' => 'settings')); ?>">Settings</a></li>
Es funktioniert auf der Hauptseite einwandfrei, aber sobald ich auf der Einstellungsseite het, jeder andere Link, der von den URL -Helferlinks zur aktuellen URL (Domain.com/Setings) generiert wird, generiert.
Irgendwelche Ideen, wie man das behebt?
Lösung
Die Lösung besteht darin, Ihrer benutzerdefinierten Route einen Namen hinzuzufügen.
$router->addRoute(
'settingsPage', //this is the name
new Zend_Controller_Router_Route('settings',
array('controller' => 'users',
'action' => 'edit'))
);
Wenn Sie es am Frontend verwenden, fügen Sie Ihren Routennamen hinzu:
<li><a href="<?php echo $this->url(array('controller' => 'users', 'action' => 'edit'), 'settingsPage', true); ?>">Settings</a></li>
a