Archivo

Archivo para Enero, 2009

Cakephp 1.2 Versión estable liberada

Viernes, 30 de Enero de 2009

El 16 de enero ha sido liberada la versión 1.2 estable de cakephp ¡QUE BIEN!.

Versión: 1.2.1.8004

Descargar.

Change log.

cakephp, download , , , ,

Video: Instalación de cakephp

Viernes, 30 de Enero de 2009

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.

cakephp, instalación, video , , , ,

Configurar cakephp

Viernes, 23 de Enero de 2009

Configurar cakephp para que trabaje con una base de datos

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:

Darle al directorio tmp permisos de escritura

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:

  • Si es por consola chmod -R 0777 /opt/lampp/htdocs/miprimerpastel/
  • Por el explorador (nautilus en mi caso) vamos y le damos clic derecho sobre el directorio tmp, allí en Acceso a directorio del Grupo y Otros lo ponemos en crear y borrar archivos. Luego clic sobre aplicar permisos a archivos dentro, y por último ok.
  • En windows no recuerdo cómo es, si alguién puede dar esa colaboración bienvenida sea.

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.

Cambiando el valor de Security.salt

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.

Conexión a la base de datos

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:

cakephp correctamente configurado

cakephp correctamente configurado

cakephp, instalación , , , , , , ,

Instalando cakephp

Miércoles, 21 de Enero de 2009

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.

Descargar XAMPP

Debido a que ya sobre este tema hay mucha documentación te remitiré a un link, o busca sobre el tema.

Instalar xampp

Descargar xampp

Al instalar xampp obtienes los requerimientos básicos de cake.

  • Servidor HTTP
  • PHP (4.3.2 en adelante)
  • Y de preferencia un motor de base de datos, nosotros usaremos MySQL.

Descargar cakephp

  1. Ingresa desde tu navegador a cakephp.org
  2. Haz clic en Download
  3. En la lista de la última versión, selecciona el archivo comprimido que desees.
  4. Luego de hacer clic estarás en la página de donación, si deseas y puedes haz la donación deseada o haz clic en No thanks.
  5. Ahora te aparecerá la ventana de descargas de tu navegador, guarda el archivo.

Instalando cakephp

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.

Ejecutar CakePHP por primera vez

Ahora veremos si hemos instalado correctamente;

  1. Abrimos nuestro navegador preferido.
  2. En dirección vamos a http://localhost/miprimerpastel

Si todo va bien debemos ver una página como la siguiente:

Iniciando cakephp por primera vez

Iniciando cakephp por primera vez

Si todo va bien ya estamos listos para empezar a desarrollar nuestra primer aplicación web.

cakephp, instalación , , , , , ,

MVC – Model – View – Controller

Sábado, 17 de Enero de 2009

MVC :: Model – View – Controller

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.

Models

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.

Controllers

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.

Views

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.

Cómo funciona

A continuación vemos cómo funciona mvc en cake.

Cómo cakephp usa mvc

Cómo cakephp usa mvc, tomada de Beginning cakephp from novie to professional

Básicamente es:

  1. El cliente envía una una petición a la aplicación, ya sea ingresando a una url o haciendo clic en un link. Usualmente en cake, una url es estructurada así: http://(dominio.com)/(Aplicación)/(Controlador)/(Acción)/(parametro1, parametro2…)
  2. El dispatcher captura la url y determina que controlador ejecutar. También pasa la acción y los parámetros al controlador.
  3. Se envían peticiones al Modelo para obtener acceso a los datos de la aplicación. Un Modelo normalmente representa una tabla en la base de datos, pero también puede representar canales RSS, LDAP, o archivos en el sistema.
  4. El scritp del Modelo determina cómo debe interactuar con la base de datos usando la petición enviada por el Controlador.
  5. Una vez el Modelo ha puesto los datos enviados o tomados en la base de datos, retorna la respuesta en el Controlador.
  6. El Controlador procesa la respuesta y genera una salida en el archivo de Vista.
  7. La Vista agrega cualquier diseño o muestra los datos a la salida del Controlador y se le envía la salida al navegador del cliente.

Beneficios

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 , , , , , ,

¿¡Qué es CakePHP!?

Viernes, 16 de Enero de 2009

Bienvenidos cakes, si se preguntan que es cakephp y se imaginan cocinando un pastel php no están tan mal.

¿Qué es cakephp?

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.

Framework PHP

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.

Conocidos patrones de diseño

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.

MVC

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.

http://book.cakephp.org/view/4/Beginning-With-CakePHP

General, cakephp , , , , , ,