2012-05-22 17 views
7

Acabo de tropezar con Phalcon (framework PHP) y parecía tan prometedor que decidí probarlo.¿Cómo configuro las rutas personalizadas en Phalcon?

He buscado en los documentos pero no he encontrado nada relacionado con las rutas en Phalcon. ¿Alguien sabe cómo crear rutas personalizadas en este marco o se supone que siempre debo seguir las convenciones?

Si aún no conoces a Phalcon, quizás quieras look at these slides para ver de qué se trata.

+2

Miré sus documentos. Parece que actualmente solo tienen rutas de Controlador/Acción. Vea aquí http://phalconphp.com/api/class/Phalcon_Router_Rewrite. Iba a mirar el código, pero me di cuenta de que el código estaba escrito en C, que no soy demasiado fluido. Consulte aquí: https://github.com/phalcon/cphalcon/blob/master/release/phalcon .c – Gohn67

+1

Me encantaría saber C y no es necesario que haga esta pregunta aquí, pero no es una opción en este momento. – marcio

Respuesta

4

Ellos respondieron a la solicitud y apenas han implementado las rutas personalizadas, que no se ve tan bien en este momento, pero su referencia es:

$router->add("/admin/:controller/a/:action/:params", array(
    "controller" => 1, 
    "action" => 2, 
    "params" => 3, 
)); 

Enlaces:

+1

Me encantaría que eso no tuviera que ir en el arranque, pero es lo suficientemente adecuado para lo que necesitaba. Las pruebas que realicé mostraron que el enrutamiento basado en expresiones regulares no era más rápido o más lento que el simple uso de '.htaccess' (esperaba más rápido, pero no más lento, es perfectamente aceptable). –

+1

De hecho, solo [sugerí] (http://phalcon.uservoice.com/forums/154026-general/suggestions/3127696-give-more-publicity-to-the-phalcon-tag-on-stack-) que dan más publicidad para esta etiqueta. Encontrar lo que necesita en la documentación es bastante exigente. –

2

Estoy bastante seguro de que tendrá que seguir con la convención baseDir/class/method/argument/....

He leído la documentación y el código fuente, y no veo ninguna sugerencia que le permita manejar rutas personalizadas confiando solo en la extensión C. Una posible solución sería mapearlos en .htaccess.

+0

Gracias @Alix, tienes razón. También creé una solicitud para esta función y respondieron muy rápido: http://phalcon.uservoice.com/forums/154026-general/suggestions/2884092-custom-routing – marcio

+0

@marcioAlmada: eso es bueno saber, Falcon se ve bastante resbaladizo . =) –

Cuestiones relacionadas