Zend_Rest_Route Le composant Zend_Rest contient une route RESTful pour Zend_Controller_Router_Rewrite. Cette route permet un schéma de routage fonction de la méthode HTTP et de l'URI afin d'y faire correspondre un module, contrôleur, et action. Le tableau suivant vous donne un aperçu du schéma de routage en fonction de l'URI. Comportement de Zend_Rest_Route Méthode URI Module_Controller::action GET /product/ratings/ Product_RatingsController::indexAction() GET /product/ratings/:id Product_RatingsController::getAction() POST /product/ratings Product_RatingsController::postAction() PUT /product/ratings/:id Product_RatingsController::putAction() DELETE /product/ratings/:id Product_RatingsController::deleteAction() POST /product/ratings/:id?_method=PUT Product_RatingsController::putAction() POST /product/ratings/:id?_method=DELETE Product_RatingsController::deleteAction()
Utilisation de Zend_Rest_Route Pour activer Zend_Rest_Route pour une application entière, construisez en un objet sans paramètre spécifique et ajoutez le comme route par défaut dans le contrôleur frontal: getRouter()->addRoute('default', $restRoute); ]]> Si Zend_Rest_Route ne trouve aucun module, contrôleur, action valides, il retournera FALSE et la route suivante sera alors analysée par le routeur. Pour activer Zend_Rest_Route pour des modules spécifiques, construisez l'objet avec comme troisième paramètre, un tableau de noms de modules : getRouter()->addRoute('rest', $restRoute); ]]> Pour activer Zend_Rest_Route pour des contrôleurs spécifiques, construisez l'objet avec comme troisième paramètre, un tableau de noms de contrôleurs en correspondance avec des noms de modules. array('ratings') )); $front->getRouter()->addRoute('rest', $restRoute); ]]> Zend_Rest_Route avec Zend_Config_Ini To use Zend_Rest_Route from an INI config file, use a route type parameter and set the config options: The 'type' option designates the RESTful routing config type. The 'defaults' option is used to specify custom default module, controller, and/or actions for the route. All other options in the config group are treated as RESTful module names, and their values are RESTful controller names. The example config defines Mod_ProjectController and Mod_UserController as RESTful controllers. Then use the addConfig() method of the Rewrite router object: addConfig($config, 'routes'); ]]> Zend_Rest_Controller Pour vous aidez à utiliser des contrôleurs avec Zend_Rest_Route, faites les étendre Zend_Rest_Controller. Zend_Rest_Controller définit les 5 opérations RESTful les plus connues sous forme de méthodes abstraites. indexAction() - Devrait récupérer un index des ressources et le passer à la vue. getAction() - Devrait récupérer des données d'une ressource définie par URI et les passer à la vue. postAction() - Devrait accepter une nouvelle ressource et la faire persister (la sauvegarder). putAction() - Devrait accepter une ressource indentifiée par URI et la faire persister (la sauvegarder). deleteAction() - Devrait supprimer la ressource identifiée par URI.