Entradas guardadas por 'CakePHP' ↓

Personalizando nuestra URL en CakePHP

Uno de los primeros problemas que me encontré en CakePHP fue que no sabia como hacer que las URL’s fueran de mi gusto, con la configuración que trae por defecto es muy sencillo crear módulos para nuestra aplicación quedando cosas como:

http://dominio.com/usuarios/ceritium

El problema es que yo quería hacer una aplicación en la que el usuario registrado tuviera una URL mas corta y sencilla, algo como:

http://dominio.com/ceritium

Para conseguir esto tendremos que modificar el archivor “routes.php” ubicado en la carpeta “config”, lo malo es que perderémos un poco de la mágia de Cake, pero no demasiada, ahora tendremos que especificar las rutas de los nuevos modulos a mano.

Tu routes seguramente será algo así:

// cake/app/config/routes.php


// Ruta por defecto
$Route->connect('/', array('controller' => 'pages', 'action' => 'display', 'home'));

// Ruta por defecto a tus páginas
$Route->connect('/pages/*', array('controller' => 'pages', 'action' => 'display'));

// Esta es la nueva linea que hace lo que queremos
$Route->connect('/*', array('controller' => 'users', 'action' => 'view'));

El problema de esto es que ahora pongas lo que pongas en la URL te llevará al controlador “users”, acción “view”, si queremos añadir mas módulos a nuestra aplicación solo tendremos que especificarlos así:

// Lleva al controlador "amigos"
$Route->connect('/amigos/:action/*', array('controller' => 'amigos'));

// Lleva al controlador "panel"
$Route->connect('/panel/:action/*', array('controller' => 'panel'));

No se si esta es la mejor manera pero a mí me funciona, además he visto que en Bakery recomiendan lo mismo.

EDITO: Que sí, si aún no sabes como sacar el id de tus usuarios con estas URL’s permanece atento o deja un post recordándomelo :P

Descubriendo CakePHP

No hace mucho lo mas “cul” de internet era programar en ROR (Ruby On Rails), el framework basado en Ruby, sin embargo existen multitud de frameworks parecidos sobre PHP.

Las ventajas de trabajar con frameworks en PHP son que la mayoría de los servidores gratuitos o compartidos corren alguna versión de este y que además la mayoría de los que han programado para la web lo han hecho en PHP por lo que no tienen la necesidad de aprender un nuevo lenguaje, aunque nadie te va a quitar tener que aprender la forma de trabajo del framework.

Entre todos los disponibles finalmente me quedé con CakePHP, no necesitaba ningún tipo de configuración en el servidor y obviamente basado en PHP.

Ya podré alguna lista de enlaces de manuales y recursos :D