2009-05-11 9 views
0

J'ai un problème avec marche arrière pour les routes regex, mon fichier de configuration est la suivante:Zend Route Regex problème inverse avec des barres obliques

routes.route1.type = "Zend_Controller_Router_Route_Regex" 
routes.route1.route = "([^\,]+)([^p]*)(?:\,page_[0-9]+)?\.html" 
routes.route1.defaults.controller = "index" 
routes.route1.defaults.action = "find" 
routes.route1.map.1 = "url_path" 
routes.route1.map.2 = "url" 
routes.route1.map.3 = "options" 
routes.route1.map.4 = "page" 
routes.route1.reverse = "%s%s,page_%d.html" 

l'URL sera http://www.site.com/cat1/cat2/cat3/cat4/cat5/title-id1_id2,page_1.html le nombre de catégories est non spécifiées œuvres regex actuelles bien, et obtient toutes les catégories à la fois, mais l'inverse met en forme toutes les barres obliques au format html:% 2F est-ce que quelqu'un sait comment je peux garder les barres obliques? J'ai besoin de l'inverse pour la pagination et toutes les entités html semblent tout simplement moche.

thx :)

Répondre

3

Si vous utilisez l'assistant d'URL, définissez le quatrième paramètre à false pour désactiver l'encodage (qui est activée par défaut). Donc quelque chose comme:

<?=$this->url(array(
    'url_path' => 'whatever', 
    'url' => 'something' 
    'options' => 'foo', 
    'page' => 'bar' 
), 'route1', false, false)?> 
Questions connexes