Hoy quiero mostrarles como hacer su primer aplicacion en kumbiaphp framwework. En realidad no es una aplicacion que valla a hacer algo util realmente, solo me servira para que vallan entendiendo como es el funcionamiento de kumbia y se acostumbren un poco a como se debe programar usando la arquitectura MVC.

Ya he explicado como instalar kumbia en Ubuntu/Linux y tambien una pequeña introduccion al Modelo MVC.

Entonces lo primero que vamos a hacer sera una aplicacion que solo utilizara una Vista y un Controlador. Para hacer el controlador lo que haremos sera crear un archivo en la carpeta controllers que esta dentro de la default que esta dentro de la carpeta apps que esta en la carpeta donde hayamos descimprimido kumbia durante la instalacion. :) podra parecer algo complicado pero no lo es realmente. Voy a explicarselo mas sencillo: la carpeta apps es donde pondremos nuestro proyecto, las cofiguraciones y el core de kumbia se encuentran en otras carpetas. La carpeta default es la carpeta por defecto donde pondremos nuestro proyecto entero. Y veremos que dento de la carpeta default hay 4 carpetas mas:

  • controllers: sera donde estaran todos los controladores de nuestro proyecto o aplicacion.
  • helpers: todavia no se para que sirve, cuando sepa les digo :p
  • models: aqui estaran los modelos de la aplicacion
  • views: obviamente aqui van las vistas.

Bueno ya explicada esta parte continuemos. Creen un archivo dentro de la carpeta controllers que se llame saludo_controller.php. Este sera el controlador llamado “saludo”. El hecho de ponerle _controller.php no es un capricho mio sino que asi debe llamarse para que kumbia sepa que es un controlador. Dentro del archivo creado coloquemos lo siguiente:

mensaje=“Hola. Esto se encuentra en el archivo del controlador”; } } ?>

Analicemos lo que hemos escrito. Hemos creado una clase llamada SaludoController que hereda de ApplicationControllers, otra vez los nombre no son capricho mio sino que el nombre de la clase debe llamarse como el controlador seguido de Controller pero esta vez sin el guion bajo.

Tambien vemos que hay una funcion publica llamada index , esta funcion y todas las que creemos diremos que son las acciones del controlador. Dentro de esta funcion vemos que lo unico que hemos hecho es crear un atributo llamado mensaje que contiene una cadena de texto y nada mas.

Bueno ahora para que podamos ver algo debemos crear una vista que nos mostrara lo que hemos hecho. Entonces dentro de la carpeta de vistas creamos una carpeta llamada igual que el controlador, o sea una carpeta llamada saludo dentro de la carpeta views. Esto no es arbitrario tampoco sino que siempre sera asi, la carpeta se debe llamar igual que el controlador. Dentro de esa carpeta creamos un archivo llamado igual que la accion que queremos mostrar y con extension .phtml , en este ejemplo la accion que queremos mostrar es index , asi que creamos index.phtml dento de la carpeta saludo.

Esa vista puede contener todo el codigo html que deseen, pues justamente es una vista, por ejemplo nosotros lo llenaremos con lo siguiente:

Esto se encuentra en el archivo de vista

Como veran son solo 2 lineas, la prima es un codigo html cualquiera que representa todo el codigo html que podemos poner en una vista, y el segundo es un codigo php donde lo unico que hacemos es mostrar en pantalla el atributo que creamos en la accion relacionada con esta vista. Como vemos solo pusimos el atributo como si fuera una variable, kumbia se encarga de entender que nos estamos refiriendo a un atributo del controlador.

Como veran aun no entramos en la parte de utilizar modelos, solo estamos usando vistas y controladores. Y como dije al principio no es una aplicacion que realmente pueda servir para algo, pero sirve para que entiendan como y donde creamos los archivos y como se maneja el modelo MVC en kumbia.

Para ver el resultado de los ejemplos deberemos poner en el navegador lo siguiente:

http://localhost/carpeta_de_instalacion_de_kumbia/default/saludo/index

y deberian ver algo como lo siguiente:

Primera aplicacion

La proxima vez veremos como utilizar modelos para crear aplicaciones de alta- baja-modificacion en unas pocas lineas. Saludos y cualquier duda me preguntan.