CAKEPHP 2.X

Embed Size (px)

Citation preview

CakePHP Documentacin

CakePHP Documentacin

1. INSTALACIN1.1. Descargar CakephpPara ello, visita la web del proyecto en github: https://github.com/cakephp/cakephp/tags y1.2. Estructura de directorios de CakePHPUna vez descargado y cuando hayas descomprimido el fichero, estos son los directorios y ficheros que vers: app lib vendors plugins .htaccess index.php READMEVers que tienes tres directorios principales: App: que es donde hars tu magia: aqu guardars los ficheros de tu aplicacin. Lib: que es donde nosotros hemos hecho nuestra magia. Haz una promesa ahora mismo: que nunca modificars ficheros en esta carpeta. Si lo haces no podremos ayudarte ya que ests modificando el ncleo de CakePHP por tu cuenta. Vendors: que es donde puedes colocar los recursos externos que necesites para que tu aplicacin funcione.

1.3. Configuracin de base de datos Rpido y sencillo, vamos a decirle a CakePHP dnde est la Base de Datos y cmo conectarnos a ellaa) Hay un fichero de configuracin preparado para que slo tengas que copiarlo y modificarlo con tu propia configuracin. Cambia el nombre del fichero /app/Config/database.php.default por /app/Config/database.php (hemos eliminado el .default del final).

b) Edita ahora este fichero y vers un array definido en la variable $default que contiene varios campos.

c) Modifica esos campos para que se correspondan con tu configuracin actual de acceso a la Base de Datos. Debera quedarte algo similar a esto:Ten en cuenta que los campos login, password, database tendrs que cambiarlos por tu usuario de MySQL, tu contrasea de MySQL y el nombre que le diste a la Base de Datos.

d) Guarda este fichero.Ahora ya podrs acceder a la pgina inicial de bienvenida de CakePHP en tu mquina. Esta pgina podrs accederla normalmente en http://localhost/cakeblog si has llamado a la carpeta raz del proyecto cakeblog. Vers una pgina de bienvenida que muestra varias informaciones de configuracin y te indica si tienes correctamente instalado CakePHP.1.4. Configuracin de Servidor(Apache)

a) En el fichero de con- figuracin de apache: httpd.conf debera existir una seccin para cada Directory de tu servidor. Asegrate de que AllowOverride est fijado a All para el directorio que contiene tu aplicacin web. Para tu seguridad, es mejor que no asignes All a tu directorio raz sino que busques el bloque que se refiera al directorio en el que tienes instalada tu aplicacin web.

Asegrate que ests editando el fichero httpd.conf correcto, ya que en algunos sistemas hay ficheros de este tipo por usuario o por aplicacin web. Consulta la documentacin de apache para tu sistema.Comprueba que existen los ficheros .htaccess en el directorio en el que est instalada tu aplicacin web. A veces al descomprimir el archivo o al copiarlo desde otra ubicacin, estos ficheros no se copian correctamente. Si no estn ah, obtn otra copia de CakePHP desde el servidor oficial de descargas.b) Asegrate de tener activado el mdulo mod_rewrite en la configuracin de apache. Deberas tener algo as:

c) Probamos en el navegador nuestra aplicacin

d) Configuraciones adicionales en el directorio , editamos el archivo Config.php y modificamos cdigo cifrado de seguridad, SistemaDeColegio\app\Config.php:

e) Intentamos en el navegador

2. ENTENDIENDO EL MODELO - VISTA - CONTROLADORCakePHP sigue el patrn diseo de software llamado MVC .Programar usando MVC separa tu aplicacin en tres partes principalmente:1. La capa del ModeloEl modelo representa la parte de la aplicacin que implementa la lgica de negocio. esto significa que es responsable de la recuperacin de datos, convirtindolo en conceptos significativos para la aplicacin, as como su procesamiento, validacin, asociacin y cualquier otra tarea relativa a la manipulacin de dichos datos.A primera vista, los objetos del modelo pueden ser considerados como la primera capa de la interaccin con cualquier base de datos que podra estar utilizando tu aplicacin. Pero, en general, representan los principales conceptos en torno a los cuales se desea implementar un programa.En el caso de una red social, la capa de modelo se hara cargo de tareas tales como guardar datos del usuario, el almacenamiento de asociaciones con amigos, el almacenamiento y la recuperacin de fotos de los usuarios, encontrar sugerencias de nuevos amigos, etc. Mientras que los objetos del modelo pueden ser considerados como Amigo, Usuario, Comentario y Foto.

2. La capa de la Vista

La vista hace una presentacin de los datos del modelo. Estando separada de los objetos del modelo, es responsable del uso de la informacin de la cual dispone para producir cualquier interfaz de presentacin de cualquier peticin que se presente.Por ejemplo, como la capa de modelo devuelve un conjunto de datos, la vista los usara para hacer una pginaHTML que los contenga. O un resultado con formato XML para que otras aplicaciones puedan consumir.La capa de la Vista no se limita nicamente a HTML o texto que represente los datos, sino que puede ser utilizada para ofrecer una amplia variedad de formatos en funcin de sus necesidades, tales como videos, msica, documentos y cualquier otro formato que puedas imaginar.

3. La capa del ControladorLa capa del controlador gestiona las peticiones de los usuarios. Es responsable de responder la informacin solicitada con la ayuda tanto del modelo como de la vista.

Los controladores pueden ser vistos como administradores, cuidando de que todos los recursos necesarios para completar una tarea se deleguen a los trabajadores ms adecuados. Espera peticiones de los clientes, comprueba su validez de acuerdo a las normas de autenticacin o autorizacin, delega la bsqueda de datos al modelo, y selecciona la tipo de respuesta ms adecuado segn las preferencias del cliente, finalmente, delega este proceso de presentacin a la capa de la Vista.

4. El ciclo de una peticin en CakePHP

Figure: 1: Una peticin MVC tpica

El ciclo de una peticin tpica en CakePHP comienza cuando un usuario solicita una pgina o un recurso de tu aplicacin. Esta solicitud es procesada por un despachador que selecciona el controlador correcto para manejarlo.

Una vez que la solicitud llega al controlador, este se comunicar con la capa del Modelo para cualquier proceso de captacin de datos o el guardado de los mismos segn se requiera.. Una vez que finaliza esta comunicacin, el controlador proceder a delegar en el objeto de vista correcto la tarea de generar una presentacin resultante de los datos proporcionada por el modelo.Finalmente, cuando esta presentacin se genera, se enva de inmediato al usuario.

Casi todas las solicitudes para la aplicacin van a seguir este patrn bsico. Vamos a aadir algunos detalles ms adelante que son especficos a CakePHP, as que mantn esto en mente a medida que avancemos.

1

12