Guia rápida para crear un sitio en PHP con CakePHP #2
Este post es la continuación del artículo Guia rápida para crear un sitio en PHP con CakePHP #1 .
Instalación sencilla de Apache + PHP + MYSQL en Windows
No soy partidario de Windows, pero a veces sólo se tiene acceso a una PC con Windows para desarrollar. Para esos casos se puede instalar el paquete XAMPP: http://sourceforge.net/projects/xampp/.
Luego de descargarlo, lo instalamos o descomprimimos en una carpeta, según sea el caso, y vamos a tener una herramienta llamada XAMPP Control, que al ejecutarla nos mostrará el estado de Apache, Mysql, Filezilla y Mercury; unos botones para iniciar y terminar (Start/Stop); y un botón para configurarlos (Admin).
Por ahora sólo necesitaremos iniciar Apache y MySQL.
Mod_rewrite
En la primera parte de este tutorial, repasamos la instalación de lo que necesitamos para empezar a desarrollar nuestro sitio con CakePHP.
Un módulo muy importante es el mod_rewrite, que se encarga del manejo de las URL “virtuales” que vamos a utilizar en nuestro sitio para automatizar varias cosas. Este módulo es vital para CakePHP y casi vital para cualquier otro framework de desarrollo web.
Para activarlo debemos editar el archivo httpd.conf de Apache, y descomentar la línea LoadModule rewrite_module modules/mod_rewrite.so
Más info sobre mod_rewrite en el blog linkalicante.
Instalación de CAKEPHP
Ya está todo listo, ahora descomprimimos la versión de CakePHP [Descarga] en nuestra carpeta root del servidor web (en Linux: /var/www, en Windows: xampp/htdocs/) .
El Modelo MVC (Model, View, Controller)
El modelo MVC es utilizado por varios frameworks, entre ellos CakePHP, por eso lo vamos a explicar un poco de que se trata.
Model (modelo), View (vista) y Controller (controlador) son los componentes en los que nos basaremos para construir nuestras páginas.
En primer lugar el Model es lo que vincula nuestra aplicación con una determinada tabla en la base de datos, que llamaremos con un nombre en plural, por ej. ejemplos. Los modelos son archivos .php que se ubican en la carpeta /app/models/ de CakePHP, y en los mismos encontraremos la definición de una clase que oportunamente por defecto debe llevar el mismo nombre que la tabla, pero en singular, por ej. Ejemplo. En el modelo también definimos las validaciones que podría llegar a hacerse y los foreign key que vincularán nuestra tabla con la tabla de otro modelo.
Después nos encontramos con el Controller (Controlador), que es lo primero que es ejecutado cuando el navegador/cliente web solicita una página al servidor web. Aquí va toda la lógica de la página, las funciones, el envío de una vista para ser mostrada en el navegador, entre otras cosas. Los controladores son archivos .php almacenados en la carpeta /app/controllers/ y llevan en su nombre el formato ejemplos_controller, es decir, el nombre en plural seguido de la palabra controller.
La View (vista) es la plantilla que usaremos para mostrar nuestros contenidos. La misma es un HTML que embebe PHP para mostrar los datos enviados por el controlador, así como para devolverle al controlador datos que ha ingresado el usuario desde el navegador. También permite utilizar PHP embebido para generar código HTML de manera automática (en CakePHP los objetos utilizados para este proposito son llamados Helpers).
Algo que debemos tener en claro antes de empezar a desarrollar, es que el código es CaseSensitive, discrimina mayúsculas y minúsculas, y lo más recomendable es seguir las convenciones de CakePHP para los nombres de tablas, vistas, controladores y modelos.
En la próxima entrega del tutorial, crearemos un ejemplo simple de aplicación en CakePHP.



Gracias por la informaci