Mit dem Zend Framework, ich versuche Routen für ein REST-API auf Ressourcen in dem folgende Muster organisiert zu bauen:Wie werden hierarchische Zend-Rest-Routen eingerichtet?
- http://example.org/users/
- http://example.org/users/234
- http://example.org/users/234/items
- http://example.org/users/234/items/34
Wie richte ich das mit Zend_Rest_Route ein?
Hier ist, wie ich Setup die Route für den Benutzer Ressource (Benutzer /: id) in meiner bootstrap.php Datei:
$this->bootstrap('frontController');
$frontController = Zend_Controller_Front::getInstance();
$restRoute = new Zend_Rest_Route($frontController);
$frontController->getRouter()->addRoute('default', $restRoute);
[Soweit ich verstehe, ist dies ein alle fangen Route so users/324/items/34 würde zu Parametern führen, die als id = 324 und items = 34 gesetzt werden und alles dem Benutzermodell (Frontmodul) zugeordnet würde. Von dort denke ich, dass ich gerade nach dem Einzelteilparameter prüfen und das Einzelteil Nr. 34 für Benutzer # 324 auf einer Ersuchenanforderung zurückholen könnte. < === Ich überprüfte es gerade und es scheint nicht so zu arbeiten:
Acessing/users/234/Produkte/43 und
var_dump($this->_getAllParams());
in der get Wirkung der Rest Controller ergibt die folgende Ausgabe:
array(4) {
["controller"]=> string(5) "users"
["action"]=> string(3) "get"
[2]=> string(5) "items" ["module"]=> string(7) "default"]
}
Irgendwie beide ids verloren gegangen ...
Jeder?
Vielen Dank für Ihre Antwort. Du hast recht, ich musste schließlich Zend_Rest_Route aufgeben, da die aktuelle Implementierung ein solches Schema nicht unterstützt. Ich ging schließlich die Zend_Controller_Router_Route mit Ketten: http://stackoverflow.com/questions/2250353/how-do-i-write-chains-of-route-in-a-in-i-file-for-in- the-zend-framew –