Indice

De KumbiaPHP Framework Wiki

Este manual esta portándose del Manual PDF de KumbiaPHP Framework.

Esta abierto, para que la comunidad ayude a portarlo y mejorarlo. Más adelante, el manual en PDF se creará de este wiki.

AGRADECIMIENTOS

   Este manual es para agradecer a quienes con su tiempo y apoyo en gran o en poca

medida han ayudado a que este framework sea cada día mejor.

   A todos ellos Gracias Totales:
      Andres Felipe Gutierrez gutierrezandresfelipe@gmail.com
      Deivinson Tejeda deivinsontejeda@kumbiaphp.com
      Emilio Silveira emilio.rst@kumbiaphp.com
      César Caballero aka Phillipo phillipo@kumbiaphp.com
  Y a toda la comunidad que rodea a Kumbia, con sus preguntas, notificaciones de errores

(Bug's), aportaciones, etc...

PREFACIO

  1. Sobre este libro
  2. Sobre Kumbia
  3. Sobre la comunidad
  4. Historia de Kumbia
  5. Que aporta Kumbia
  6. ¿Porque usar Kumbia?
  7. Modelo, Vista, Controlador (MVC)
    1. ¿Que es?
    2. Implementación y uso
    3. Información adicional
    4. Caso práctico

EMPEZANDO CON KUMBIA PHP FRAMEWORK

Instalar Kumbia

  1. Requisitos
  2. Descargar Kumbia
  3. Configuración de módulos (Apache, PHP y bbdd)
    1. Configurando Apache
      1. ¿Por qué es importante Mod-Rewrite?
    2. Configuración de PHP
      1. ¿Porque Kumbia utiliza PHP5?
    3. Configurando BB.DD
      1. Configuración de MySQL
      2. Configurando Oracle
  4. Configurar XAMPP
    1. Instalando XAMPP bajo Windows
    2. Instalando XAMPP bajo GNU/Linux
    3. Instalando XAMPP bajo Debian/Ubuntu Linux
  5. Configurar Apache2Triad
  6. Verificar la instalación de Kumbia
    1. Instalar Kumbia PHP en producción de forma segura

Estructura de Kumbia

  1. Introducción
  2. Directorios de entorno
    1. Explicación
  3. Archivos de entorno
    1. config.ini
      1. Explicación de los parámetros ./config/config.ini
    2. environment.ini
      1. Estructura del archivo ./config/environment.ini
      2. Explicación de los parámetros ./config/environment.ini
    3. routes.ini
      1. Explicación de los parámetros ./config/routes.ini
      2. Gestionar extensiones. Ejemplo práctico
  4. Resumen

Características avanzadas

  1. ¡Parámetros con Nombre!
  2. Obtener valores en una aplicación Kumbia
  3. Uso de Paquetes (Namespaces)
  4. Programación modular

Primera Aplicación en Kumbia

  1. Creando una nueva aplicación
  2. Hola Kumbia
  3. Kumbia URLS
  4. Nuestra Primera Acción
  5. Agregando más Contenido
  6. Repitiendo la Historia

TRABAJANDO CON KUMBIA PHP FRAMEWORK

MODELOS

  1. Introducción
  2. ¿Por qué usar una capa de Abstracción?
  3. Capa de Abstracción Independiente en Kumbia
  4. Adaptadores Kumbia
  5. Esquema de Acceso a BB.DD en Kumbia
  6. Modelos
    1. Características de los modelos:
    2. Acceso Directo a RDBMS
      1. La Clase DdBase
      2. Propiedades de la Clase DB
        1. $db->Id_Connection
        2. $db->dbUser
        3. $db->dbPass
        4. $db->dbHost
        5. $db->dbName
        6. $db->dbPort
        7. $db->lastError
        8. $db->lastResultQuery
      3. Métodos de la Clase DB
        1. connect()
        2. query()
        3. close()
        4. fetch_array()
        5. field_name()
        6. data_seek()
        7. affected_rows()
        8. error()
        9. no_error()
        10. find()
        11. in_query()
        12. in_query_assoc()
        13. in_query_num()
        14. fetch_one()
        15. table_exists()

ACTIVE RECORD

  1. Ventajas del ActiveRecord
  2. Crear un Modelo en Kumbia PHP Framework
  3. Columnas y Atributos
  4. Llaves Primarias y el uso de IDs

CRUD: Create, Read, Update, Delete

  1. Creando Registros
  2. Consultando Registros
  3. El poderoso Find
  4. Promedio, Contando, Sumando, Mínimo y Máximo
  5. Actualizando Registros existentes
  6. Borrando Registros
  7. Propiedades Soportadas

Convenciones en ActiveRecord

  1. Convenciones Generales
  2. id
  3. campo_id
  4. campo_at
  5. campo_in

Convenciones para RDBMs

  1. Convenciones Especiales para PostgreSQL
  2. Convenciones Especiales para Oracle

ACTIVE RECORD API

A continuación veremos una referencia de los métodos que posee la clase ActiveRecord y su funcionalidad respectiva. Éstos se encuentran organizados alfabéticamente:

Consultas

Métodos para hacer consulta de Registros:

  1. distinct
  2. find_all_by_sql(string $sql)
  3. find_by_sql(string $sql)
  4. find_first
  5. find
  6. select_one(string $select query)
  7. select_one(string $select query) (static)
  8. exists
  9. find_all_by
  10. find_by_*campo*
  11. find_all_by_*campo*

Conteos y Sumatorias

  1. count
  2. sum
  3. count_by_sql

Promedios, Máximo y Mínimo

  1. average
  2. maximum
  3. minimum

Creación-Actualización-Borrado de Registros

  1. create
  2. update
  3. update_all
  4. save
  5. create_from_request
  6. save_from_request
  7. delete
  8. delete_all

Validación

  1. validates_presence_of
  2. validates_length_of
  3. validates_numericality_of
  4. validates_email_in
  5. validates_uniqueness_of
  6. validates_date_in
  7. validates_format_of

Transacciones

  1. commit()
  2. begin()
  3. rollback()

Otros Métodos

  1. sql(string $sql)

Callbacks ActiveRecord

  1. Introduccion
  2. before_validation
  3. before_validation_on_create
  4. before_validation_on_update
  5. after_validation_on_create
  6. after_validation_on_update
  7. after_validation
  8. before_save
  9. before_update
  10. before_create
  11. after_update
  12. after_create
  13. after_save
  14. before_delete
  15. after_delete

Asociaciones

  1. Introducción
  2. Pertenece (belongs_to)
  3. Tiene un (has_one)
  4. Tiene muchos (has_many)
  5. Tiene y pertenece a muchos (has_and_belongs_to_many)

Paginadores

  1. Paginate
  2. Paginate_by_sql
  3. Paginando en ActiveRecord
  4. Ejemplo completo de uso del paginador

APPLICATION CONTROLLER

Métodos de la Clase ApplicationController

La clase posee una serie de métodos que son útiles para el trabajo con controladores.

render($view)

Visualiza una vista que pertenece al mismo controlador.

Ejemplos de uso:

<?php
   class ProductosController extends ApplicationController {
      function index(){
         $this->render('consultar');
      }
    } //fin de la clase

?> En este caso se visualizaría la vista views/productos/consultar.phtml

Obtener valores desde el controller

ApplicationControllerBase (Clase padre)

Enrutamiento y redirecciones

VISTAS Y HELPERS

  1. ¿Porque usar vistas?

Vistas

Layouts

Templates

Partials

CCS en KumbiaPHP

content()

Helpers

AJAX

EXTENSIONS (Módulos extras de KumbiaPHP)

Filter

  1. Qué es un Filtro?
  2. Utilización básica
  3. Métodos de la clase Filter

GENERADOR DE FORMULARIOS

  1. Tipos de Formularios
  2. Ventajas Generadores de Formularios
  3. Desventajas Generadores de Formularios

EJEMPLOS

GLOSARIO