2010-12-03 22 views
1

I définiroute zend exclure une chaîne

routes.kategoriler.route    = ":lang/categories/:cat/:name" 
routes.kategoriler.defaults.controller = "category" 
routes.kategoriler.defaults.action  = "index" 


routes.categories.route    = ":lang/:type/:cat/:name" 
routes.categories.defaults.controller = "types" 
routes.categories.defaults.action  = "index" 

prises de type "catégories" mot. Je mets des définitions avant et après, mais pas moyen. Pouvez-vous proposer une solution?

Répondre

2

Utilisez une condition pour que le type ne corresponde pas aux 'catégories'. Comme ceci:

routes.categories.reqs.type = "[^categories]" 

Malheureusement mes compétences regex ne sont pas sur le dessus, vous voudrez peut-être réécrire (Il est un peu laid, et il désapprouve tout ce qui contient « catégories », mais il vous donne l'idée .)

0

pour être en mesure d'accepter quoi que ce soit, sauf l'e match de xact de « catégories » utiliser le ci-dessous regexp

^((?!^categories$).)*$ 

cela vous permettra d'utiliser le type de « my-catégories » ou « catégories-de-produits » ou toute autre chose qui est pas une correspondance exacte " catégories "