Iniciando con CakePhp

CakePHP es un framework escrito en php que implementa un modelo vista controlador (MVC), su uso es sumamente sencillo y nos ayuda a desarrollar código y aplicaciones más rápido.

Puede bajar la última versión estable de CakePhp o bien obtener la versión más actualizada (en desarrollo) vía SVN (si no conoce o nunca ha utilizado SubVersion (SVN) puede leer estos 2 tutoriales: Instalación y Configuración de SVN).
Antes de iniciar el tutorial, asegúrese de tener corriendo un servidor web(IIS, apache, etc) y tener correctamente configurado PHP.

En mi caso utilizaré la versión de desarrollo de CakePHP que obtuve vía SVN (versión 1.2.3.8166). No importa cómo lo obtiene, todo lo que necesita es extraer CakePhp a un directorio en su computadora, digamos a c:\CakePHP y ver que su estructúra de directorios sea similar a lo siguiente:

Estructura de directorios de CakePhp

Rápidamente veremos que hay en cada carpeta

App -> donde nosotros haremos que nuestra magia suceda, acá guardaremos nuestras funciones, códigos, páginas, controladores, etc.

Cake-> acá está el núcleo de CakePhp, al estar separado del código de nuestra o nuestras apps, podemos compartir una sola instalación de cakephp con varias aplicaciones (sitios web)

Vendors -> Si tenemos algún componente de terceros que vayamos a utilizar (foros php, componentes para php, etc) lo debemos guardar acá.

La carpeta Cake y Vendors no la tocaremos en este tutorial, así que vamos a examinar la carpeta App, esta es la carpeta de la aplicación default, si necesitamos una aplicación más (otro sitio web o una sub aplicación en un sitio web existente) lo único que debemos hacer es copiar el contenido de APP a una nueva carpeta dentro de c:\cakephp.

Yo no recomiendo utilizar la carpeta App para nuestro primer desarrollo, siempre prefiero que la carpeta tenga el nombre de mi proyecto. Así que empezaremos a configurar nuestro entorno para crear nuestra estructura y aplicación.

Estoy utilizando Xampp en windows, así que luego de instalarlo ya tengo Apache+php+mysql en mi pc instalado y configurado. Lo único que me resta hacer es agregar a la ruta de búsqueda (path en inglés)  la carpeta donde tengo Php y CakePhp:

Damos clic derecho sobre mi pc y luego seleccionamos Propiedades luego seleccionamos la página de Opciones Avanzadas (si está en windows vista o windows 7 debe seleccionar primero la opción que dice “configuración avanzada del sistema”) y finalmente vamos al botón que dice “Variables del Entorno”:

propiedades_sistema_path
Una vez en la ventana que aparecerá deberemos buscar en la lista inferior la variable que dice “path”, seleccionamos el botón de “editar”, nos movemos al final del valor y agregamos un ; y escribimos la ruta donde tenemos instalado PHP  con un ; al final. luego agregamos la ruta donde está CakePhp  y le agregamos la ruta cake\console para que se vea como lo siguiente:

modificar_path_php

Una vez que tengamos esto hecho haremos la prueba, desde menú inicio/ejecutar y escribimos “cmd” y aceptar, en la ventana de comandos que aparecerá escribiremos “php -v” sin las comillas y presionamos enter, la pantalla debería lucir más o menos así:

php_v
si aparece un mensaje de error con el texto

“php” no se reconoce como un comando interno o externo,programa o archivo por lotes ejecutable.

significa que no hemos establecido la ruta correctamente.

Si todo ha ido bien, escribiremos “cake” y presionamos enter, la salida debe ser algo similar a la ventana siguiente:
cake_exec

Si todo está bien configurado veremos esa pantalla. lo que significa que estamos listos para crear nuestro primero proyecto: nos moveremos al directorio que creamos inicialmente con

CD c:\cakePhp

y ejecutaremos

cake bake project c:\cakephp\miProyecto

donde “miProyecto” es el nombre del proyecto a crear, usen el nombre que gusten.

Revisen los valores que cake bake les presentará y si están de acuerdo escriban “y” y presionen enter, si les preguntan si desean “verbose output” pueden escribir “n” y presionar enter (simplemente muestra los archivos que va creando).

el resultado debe ser similar a esto:

creando_proyecto_bake

Vamos a ver nuestro directorio con el explorador de windows, abriremos C:\cakePhp\miProyecto
nueva_app_cake

El siguiente paso es configurar nuestro servidor web para que apunte a nuestro directorio
Cómo estoy usando apache he creado esta sección en el archivo C:\xampp\apache\conf\extra\httpd-vhosts.conf:

<VirtualHost *:80>
ServerName miServidor
DocumentRoot c:/cakephp/miProyecto/webroot
<Directory />
Options FollowSymLinks AllowOverride All
</Directory>
<Directory c:/cakephp/miProyecto/webroot>
Options Indexes FollowSymLinks
AllowOverride All Order allow,deny
Allow from all
</Directory>
</VirtualHost>

También necesité editar el archivo c:\windows\System32\drivers\etc\hosts agregando al final la siguiente línea

127.0.0.1 miServidor

Esto nos permitirá probar nuestra aplicación en la dirección http://miServidor/ si usa IIS quizá no necesite editar este archivo si usa un directorio virtual.

Ahora desde el navegador web abriremos http://miServidor y veremos una página similar a esta:
primer_proyecto_cakephp_inical

Para modificar el contenido de la página inicial basta con modificar el archivo en
C:\CakePhp\miProyecto\views\pages\home.ctp

Para modificar la apariencia y aplicar nuestro propio diseño al sitio, basta con modificar el archivo
C:\CakePhp\miProyecto\views\layouts\default.ctp

Bueno, en la siguiente artículo abordaremos el tema de la creación de Modelos, controladores y vistas.

Hasta la próxima.

1 Trackback(s)

  1. Jul 2, 2009: from Modelo CakePhp : Solo Quiero Info

Post a Comment