Cakephp 1.2 Versión estable liberada
El 16 de enero ha sido liberada la versión 1.2 estable de cakephp ¡QUE BIEN!.
Versión: 1.2.1.8004
El 16 de enero ha sido liberada la versión 1.2 estable de cakephp ¡QUE BIEN!.
Versión: 1.2.1.8004
He realizado el siguiente video, donde muestro cómo instalar cakephp en un servidor local sobre el sistema operativo linux con el fin de apoyar el anterios post donde se describe paso a paso la intalación.
Necesitamos que los campos que se ven amarillo en la pantalla de bienvenida de cakephp (http://localhost/miprimerpastel) pasen a verdes, esto significará que todo anda bien. Los pasos a seguir son:
El directorio tmp está localizado dentro de app, en nuestro caso será /opt/lampp/htdocs/miprimerpastel/app, allí, debemos cambiar los permisos de la siguiente forma:
Ahora si vamos al navegador y refrezcamos la pantalla en http://localhost/miprimerpastel/ nos debería aparecer el siguiente mensaje Your tmp directory is writable sobre un fondo verde.
Cuando una sesión es iniciada en nuestra aplicación de cake, el servidor agrupa una serie de peticiones utilizando un ID de sesión, de base de datos, o una cookie. Sea cual sea el método, la idea detrás de la sesión es que el servidor pueda mantener una comunicación con el usuario, inclusive si la comunicación puede ser interrumpida durante el camino. Esto ocurre cada vez que inicias sesión en una aplicación web a través de un nombre de usuario o algo parecido en la web.
Cake maneja un sistema de sesiones bastante sencillo, pero es muy importante que esa sesión siempre sea segura. No queremos que nadie a través de las sesiones pueda hacer daños en nuestra aplicación.
Para añadir seguridad a nuestras variables de sesión, debemos abrir el archivo core.php ubicado en /opt/lampp/htdocs/miprimerpastel/app/config/core.php en este archivo aproximadamente en la línea de código 151 verás algo así:
Configure::write(‘Security.salt’, ‘DYhG93b0qyJfIxfs2guVoUubWwvniR2G0FgaC9mi’);
Debido a que todos los que descarguen la misma versión de cake tendrán esta varible igual, debemos cambiarla por una única para evitar daños en la aplicación por alguién que conozca cake y haga uso de la misma sesión.
Así, que el segundo campo debemos llenarlo con datos alpha númericos como deseemos, con unos 40 apróximadamente estará bien. Debe quedar algo así:
Configure::write(‘Security.salt’, ‘aks23DSDSjjASSm15DddaweoislopD2sD2Gd2sAsI’);
Y guardamos el archivo con los cambios hechos.
Si vamos al navegador y refrezcamos veremos que ahora este campo se nos ha desaparecido. Sólo falta el de la base de datos y todo estará listo.
Ahora, debemos decirle a cake que base de datos usaremos en nuestra aplicación, y cual será el usuario que tendrá acceso.
Para ello, vamos al phpmyadmin de nuestro localhost y creamos la base de datos http://localhost/phpmyadmin allí nos loguearemos y luego crearemos nuestra base de datos, en mi caso la pondré miprimerpastel y el usuario será root con password 123456 (sólo para efectos ilustrativos, nunca uses datos tan simples en tu aplicación real).
Luego renombraremos el archivo que se encuentra en /opt/lampp/htdocs/miprimerpastel/config/database.php.default a database.php una vez renombrado, lo abrimos en nuestro editor de código preferido y cambiamos los siguiente valores:
var $default = array(
‘driver’ => ‘mysql’,
‘persistent’ => false,
‘host’ => ‘localhost’,
‘login’ => ‘root’, //El usuario que acabamos de crear, en este ejemplo root
‘password’ => ‘123456′, //el password asignado al usuario root
‘database’ => ‘miprimerpastel’, //la base que acabamos de crear
‘prefix’ => ”,
);
Una vez editados esos campos, guardamos y vamos al navegador y refrezcamos. Y LISTO, ahora cake no nos muestra ningún error.
Con estos 3 sencillos pasos está nuestra aplicación configurada, ahora debemos pensar muy bien en los modelos de las bases de datos y comenzar a programar nuestro primer pastel. La salida que nos da el navegador debe ser como la siguiente:
Otro de los grandes beneficios de cakephp es su fácil y rápida instalación, a continuación veremos cómo instalar cakephp en nuestro localhost.
Debido a que ya sobre este tema hay mucha documentación te remitiré a un link, o busca sobre el tema.
Al instalar xampp obtienes los requerimientos básicos de cake.
Ahora que ya tenemos nuestra versión de cake y el servidor local debidamente configurado procedemos a instalar.
Su instalación es bastante sencilla, lo que debos hacer es acceder a la carpeta de nuestro servidor local, si instalaste xampp la ruta en linux por defecto es así: /opt/lampp/htdocs/ y en windows creo que generalmente es c:xampp/htdocs/, así que en esta carpeta descomprimimos la versión de cake que nos hemos descargado.
Esto generará una carpeta con un nombre parecido a este 1.2.0.7962 dependiendo de la versión de cake descargada, así que le daremos un nombre un poco más general, renombraremos esta carpeta, en este caso le pondremos miprimerpastel.
Ahora veremos si hemos instalado correctamente;
Si todo va bien debemos ver una página como la siguiente:
Si todo va bien ya estamos listos para empezar a desarrollar nuestra primer aplicación web.
Cake aplica una estructura MCV para las aplicaciones web. Básicamente es separar operaciones típicas en áreas específicas: Models para todas las iteraciones con la base de datos, Views para todas las salidas o respuestas que son enviadas al usuario, y Controllers para toda la lógica o el control de flujo de la aplicación.
En cakephp, un modelo representa gereralmente una tabla de la base de datos en particular. Cada tabla de la base de datos debe tener su modelo que la represente. Así, en cakephp, cada tabla en la base de datos tiene su propio modelo. Todo el código PHP relacionado con acceder, editar, modificar o borrar registros de las tablas están situados en el modelo. También, contiene código que define su relación con otros modelos. Además, se definen reglas de validación de datos cuando van a ser agregados para ese modelo. Los modelos pueden ser vistos como la capa de datos de la aplicación.
En cakephp, los controladores, controlan el flujo de la aplicación o lógica de la aplicación. Cada solicitud de datos web es dirigida a un controlador en particular donde la entrada del usuario(data POST O GET) es aceptada. La lógica del controlador decide que respuesta es generada. Normalmente, la lógica del controlador contiene llamadas a los modelos para acceder a los datos, y también otra funcionalidad como control de acceso, chequeos etc. Luego, el controlador pasa la respuesta (salida) a la vista. Puede ser visto como la capa que controla la lógica de una aplicación.
Son las salidas o respuestas que son enviadas de regreso al usuario una vez que la solicitud es procesada. Básicamente consiste en las etiquetas de código (como HTML) con código PHP incrustado, pero también puede contener otras formas de salida como XML, documentos PDF etc. Se puede ver como la capa de presentación de la aplicación.
A continuación vemos cómo funciona mvc en cake.

Cómo cakephp usa mvc, tomada de Beginning cakephp from novie to professional
Básicamente es:
Los beneficios de usar MVC es que nos ayuda a estructurar el código de modo que permita un rápido desarrollo. También nos ayuda a reusar código haciendo que la aplicación obtenga un liviano peso. Agregar nuevas funciones se hace de forma rápida y hacer cambios en algún lugar sin afectar otras partes. Ayuda a diseñadores y desarrolladores a trabajar simultanéamente.
cakephp, controllers, models, mvc, views
Bienvenidos cakes, si se preguntan que es cakephp y se imaginan cocinando un pastel php no están tan mal.
Cakephp es un framework de código abierto y libre para php que agiliza el desarrollo a través del lenguaje php y provee una arquitectura extensible para desarrollar, mantener y lanzar aplicaciones web. Cakephp usa conocidos patrones de diseño como MVC y ORM (más adelante se entrará en detalle sobre estos temas) dentro de los paradigmas de configuración.
Para comenzar con cakephp, es importante que tengas unos básicos conocimientros sobre php y programación orientada a objetos (OOP). Cakephp hace uso de diferentes tecnologías como MySQL, JavaScript, Ajax… pero acá no sé discutirán sobre ellas, sólo veremos su implementación en cake.
Un framework php es una colección de código, librerias, clases y entorno de ejecución en tiempo real que ayuda a los desarrolladores a contruir aplicaciones web de una forma ágil y rápida.
Un patrón de diseño es una solución general a un común y concurrente problema en desarrollo web. No es un código completo, más bien es una descripción de cómo resolver un problema que puede ser manejado en diferentes situaciones.
El patrón MVC (Model, View, Controller) es uno de los más comunes en desarrollo de software, donde el código es separado en 3 partes: Models: Modelos, Views: Vistas, Controllers: Controladores. El propósito exacto de cada parte depende de la implementación, y puede variar de un framework a otro.
Cakephp será la receta principal de nuestras “exquisitas” aplicaciones.