3.13 La consola de CakePHP
Esta sección provee una introducción a CakePHP en la línea de comandos. Si tu alguna vez has utilizado tus clases MVC de CakePHP en un cron job o cualquier otro script de línea de comandos, esta sección es para ti.
PHP provee un poderoso cliente CLI que hace que crear interfases entre tus archivos de sistema y tus aplicaciones sea mucho más sencillo. La Consola CakePHP provee un framework para crear scritps de shell. La Consola usa una configuración del tipo despachador para cargar una un shell o una tarea, y para regresar sus parámetros.
Una versión de línea de comandos (cli) de PHP debe de estar disponible en el sistema si planeas usar la Consola.
Antes de que nos metamos en cosas más específicas, hay que asegurarnos de que podemos correr CakePHP en consola. Primero, necesitas abrir una terminal el sistema. Los ejemplos mostrados en esta sección serán en bash, pero la Consola e CakePHP es compatible con Windows también. Ejecutemos el programa de Consola desde bash. Este ejemplo asume que el usuario ya esta logeado en una sesión de bash y se encuentra en la raíz de la instalación de CakePHP.
Puedes técnicamente correr la consola usando algo similar a esto:
$ cd /my/cake/app_folder $ ../cake/console/cake
Pero el uso preferido es agregando el directorio de consola a tu ruta para que puedas usar el comando cake en cualquier lado:
$ cake
Ejecutar la Consola sin argumentos produce el siguiente mensaje de ayuda:
Hello user,
Welcome to CakePHP v1.2 Console
---------------------------------------------------------------
Current Paths:
-working: /path/to/cake/
-root: /path/to/cake/
-app: /path/to/cake/app/
-core: /path/to/cake/
Changing Paths:
your working path should be the same as your application path
to change your path use the '-app' param.
Example: -app relative/path/to/myapp or -app /absolute/path/to/myapp
Available Shells:
app/vendors/shells/:
- none
vendors/shells/:
- none
cake/console/libs/:
acl
api
bake
console
extract
To run a command, type 'cake shell_name [args]'
To get help on a specific command, type 'cake shell_name help'
La primera información mostrada se relaciona con las rutas. Esto es epecialmente útil si estas ejecutando la consola de diferentes partes del sistema de archivos.
Muchos usuarios agregan la Consola de CakePHP a sus rutas del sistema operativo para que pueda ser ejecutado fácilmente. Imprimiendo las rutas del directorio de trabajo root, app, y core te permite ver donde la Consola hará los cambios. Para cambiar la carpeta de app con el que deseas trabajar, puedes proporcionar su ruta como el primer argumento al comando cake. Este siguiente ejemplo nos muestra como especificar un folder de app, asumiendo que ya has agregado el carpeta de la consola en tu PATH:
$ cake -app /path/to/app
La ruta provista puede ser relativa al directorio de trabajo actual o provista como una ruta absoluta.


























