Pregunta

Ni siquiera estoy seguro de cómo buscar exactamente esto, pero tengo una URL

site.com/forum/controller/action

Donde el foro es un complemento y actualmente lo tengo enrutando al foro de complementos con éxito con

Router::connect('/forum', array('plugin' => 'forum', 'controller' => 'home', 'action' => 'index'));

Sin embargo, quiero agregar una ruta que conecte cualquier subdirectorio de nivel superior al foro de complementos. Por ejemplo,

site.com/fish/controller/action
site.com/bird/controller/action

Ambos enrutarían al complemento del foro. Similarmente,

site.com/bird

También enrutaría al complemento del foro. Este es lo mejor que he podido encontrar y no tiene ningún efecto (obtengo un "FishController no se puede encontrar":

Router::connect('/*/:controller/:action/*', array('plugin' => 'forum'));

¿La respuesta más cercana que pude encontrar básicamente dice que esto podría no ser posible? http://cakephp.1045679.n5.nabble.com/routes-with-wildcards-missing-controller-errors-td1263632.html

Editar: después de un poco más de prueba y error, probé esto:

Router::connect('/:site/:controller/:action/*', array('plugin' => 'forum'));

Y funciona. ¿Alguien podría explicar esto?

No hay solución correcta

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top