Edición de «Indice»

De KumbiaPHP Framework Wiki

Advertencia: no has iniciado sesión. Tu dirección IP se hará pública si haces cualquier edición. Si inicias sesión o creas una cuenta, tus ediciones se atribuirán a tu nombre de usuario, además de otros beneficios.

Puedes deshacer la edición. Antes de deshacer la edición, comprueba la siguiente comparación para verificar que realmente es lo que quieres hacer, y entonces guarda los cambios para así efectuar la reversión.

Revisión actual Tu texto
Línea 1: Línea 1:
<big>Nuevo manual actualizado para la v1 en español e ingles en [https://github.com/KumbiaPHP/Documentation/blob/master/es/index.md Manual KumbiaPHP en Github]
+
Este manual esta portándose del [  Manual PDF de KumbiaPHP Framework].
</big>
 
 
 
Este manual esta portándose del [http://ufpr.dl.sourceforge.net/sourceforge/kumbia/Manual_Kumbia_PHP_Framework_v0-5.pdf Manual PDF de KumbiaPHP Framework].
 
 
 
 
Esta abierto, para que la comunidad ayude a portarlo y mejorarlo.
 
Esta abierto, para que la comunidad ayude a portarlo y mejorarlo.
Más adelante, el manual en PDF se creará de este wiki.
+
Más adelante, el manual en PDF se creara de este wiki.
  
 
= [[Agradecimientos|AGRADECIMIENTOS]] =
 
= [[Agradecimientos|AGRADECIMIENTOS]] =
    Este manual es para agradecer a los que 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
 
 
= [[Prefacio|PREFACIO]] =
 
= [[Prefacio|PREFACIO]] =
  
Línea 19: Línea 10:
 
#[[Prefacio#Sobre_Kumbia|Sobre Kumbia]]
 
#[[Prefacio#Sobre_Kumbia|Sobre Kumbia]]
 
#[[Prefacio#Sobre_la_comunidad|Sobre la comunidad]]
 
#[[Prefacio#Sobre_la_comunidad|Sobre la comunidad]]
#[[Prefacio#Historia_de_Kumbia|Historia de Kumbia]]
+
#[[Prefacio#Sobre_la_comunidad|Historia de Kumbia]]
 
#[[Prefacio#Que_aporta_Kumbia|Que aporta Kumbia]]
 
#[[Prefacio#Que_aporta_Kumbia|Que aporta Kumbia]]
#[[Prefacio#.C2.BFPorque_usar_Kumbia.3F|¿Porque usar Kumbia?]]
+
#[[Prefacio#Porque_usar_kumbia|Porque usar Kumbia]]
#[[Prefacio#Modelo.2C_Vista.2C_Controlador_.28MVC.29|Modelo, Vista, Controlador (MVC)]]
+
#[[Model_Vista_Controlador|Modelo, Vista, Controlador (MVC)]]
##[[Prefacio#.C2.BFQue_es.3F|¿Que es?]]
+
 
##[[Prefacio#Implementaci.C3.B3n_y_uso|Implementación y uso]]
+
 
##[[Prefacio#Informaci.C3.B3n_adicional|Información adicional]]
+
 
##[[Prefacio#Caso_pr.C3.A1ctico|Caso práctico]]
 
  
 
= EMPEZANDO CON KUMBIA PHP FRAMEWORK =
 
= EMPEZANDO CON KUMBIA PHP FRAMEWORK =
Línea 32: Línea 22:
 
== [[Instalar_Kumbia|Instalar Kumbia ]] ==
 
== [[Instalar_Kumbia|Instalar Kumbia ]] ==
  
#[[Instalar_Kumbia#Requisitos|Requisitos]]
+
#Requisitos
#[[Instalar_Kumbia#Descargar_Kumbia|Descargar Kumbia]]
+
#Descargar Kumbia
#[[Instalar_Kumbia#Configuraci.C3.B3n_de_m.C3.B3dulos_.28_apache.2C_php_y_bbdd_.29|Configuración de módulos (Apache, PHP y bbdd)]]
+
#Configuración de módulos ( apache, php y bbdd )
##[[Instalar_Kumbia#Configurando_Apache|Configurando Apache]]
+
##Configurando apache
###[[Instalar_Kumbia#.C2.BFPor_qu.C3.A9_es_importante_Mod-Rewrite.3F|¿Por qué es importante Mod-Rewrite?]]
+
###3.1.1 ¿Por qué es importante Mod-Rewrite?
##[[Instalar_Kumbia#Configuraci.C3.B3n_de_PHP|Configuración de PHP]]
+
##Configuración de PHP
###[[Instalar_Kumbia#.C2.BFPorque_Kumbia_utiliza_PHP5.3F|¿Porque Kumbia utiliza PHP5?]]
+
###¿Porque Kumbia utiliza PHP5?
##[[Instalar_Kumbia#Configurando_BB.DD|Configurando BB.DD]]
+
##Configurando BB.DD
###[[Instalar_Kumbia#Configuraci.C3.B3n_de_MySQL|Configuración de MySQL]]
+
###Configuración de MySQL
###[[Instalar_Kumbia#Configurando_Oracle|Configurando Oracle]]
+
###Configurando Oracle
#[[Instalar_Kumbia#Configurar_XAMPP|Configurar XAMPP]]
+
#Configurar XAMPP
##[[Instalar_Kumbia#Instalando_XAMPP_bajo_Windows|Instalando XAMPP bajo Windows]]
+
##Instalando XAMPP bajo Windows
##[[Instalar_Kumbia#Instalando_XAMPP_bajo_GNU.2FLinux|Instalando XAMPP bajo GNU/Linux]]
+
##Instalando XAMPP bajo GNU/Linux
##[[Instalar_Kumbia#IInstalando XAMPP bajo Debian/Ubuntu Linux|Instalando XAMPP bajo Debian/Ubuntu Linux]]
+
##Instalando XAMPP bajo Debian/Ubuntu Linux
#[[Instalar_Kumbia#Configurar_Apache2Triad|Configurar Apache2Triad]]
+
#Configurar Apache2Triad
#[[Instalar_Kumbia#Verificar la instalación de Kumbia|Verificar la instalación de Kumbia]]
+
#Verificar la instalación de Kumbia
##[[Instalar_Kumbia#Instalar Kumbia PHP en producción de forma segura| Instalar Kumbia PHP en producción de forma segura]]
+
#Instalar Kumbia PHP en producción de forma segura
  
== [[Estructura_de_Kumbia|Estructura de Kumbia]] ==
+
== [[Estructura de Kumbia]] ==
#[[Estructura_de_Kumbia#Introducci.C3.B3n|Introducción]]
+
#Introducción
#[[Estructura_de_Kumbia#Directorios_de_entorno|Directorios de entorno]]
+
#Directorios de entorno
##[[Estructura_de_Kumbia#Explicaci.C3.B3n|Explicación]]
+
#Archivos de entorno
#[[Estructura_de_Kumbia#Archivos_de_entorno|Archivos de entorno]]
+
#Resumen
##[[Estructura_de_Kumbia#config.ini|config.ini]]
 
###[[Estructura_de_Kumbia#Explicaci.C3.B3n_de_los_par.C3.A1metros_..2Fconfig.2Fconfig.ini|Explicación de los parámetros ./config/config.ini]]
 
##[[Estructura_de_Kumbia#environment.ini|environment.ini]]
 
###[[Estructura_de_Kumbia#Estructura_del_archivo_..2Fconfig.2Fenvironment.ini|Estructura del archivo ./config/environment.ini]]
 
###[[Estructura_de_Kumbia#Explicaci.C3.B3n_de_los_par.C3.A1metros_..2Fconfig.2Fenvironment.ini|Explicación de los parámetros ./config/environment.ini]]
 
##[[Estructura_de_Kumbia#routes.ini|routes.ini]]
 
###[[Estructura_de_Kumbia#Explicaci.C3.B3n_de_los_par.C3.A1metros_..2Fconfig.2Froutes.ini|Explicación de los parámetros ./config/routes.ini]]
 
###[[Estructura_de_Kumbia#Gestionar_extensiones._Ejemplo_pr.C3.A1ctico|Gestionar extensiones. Ejemplo práctico]]
 
#[[Estructura_de_Kumbia#Resumen|Resumen]]
 
  
 
== [[Características avanzadas]] ==
 
== [[Características avanzadas]] ==
#[[Caracter%C3%ADsticas_avanzadas#.C2.A1Par.C3.A1metros_con_Nombre.21|¡Parámetros con Nombre!]]
+
#¡Parámetros con Nombre!
#[[Caracter%C3%ADsticas_avanzadas#Obtener_valores_en_una_aplicaci.C3.B3n_Kumbia|Obtener valores en una aplicación Kumbia]]
+
#Obtener valores en una aplicación Kumbia
#[[Caracter%C3%ADsticas_avanzadas#Uso_de_Paquetes_.28Namespaces.29|Uso de Paquetes (Namespaces)]]
+
#Uso de Paquetes (Namespaces)
#[[Caracter%C3%ADsticas_avanzadas#Programaci.C3.B3n_modular|Programación modular]]
+
#Programación modular
  
 
==[[Primera Aplicación en Kumbia]]==
 
==[[Primera Aplicación en Kumbia]]==
#[[Primera_Aplicaci%C3%B3n_en_Kumbia#Creando_una_nueva_aplicaci.C3.B3n|Creando una nueva aplicación]]
+
#Creando una nueva aplicación
#[[Primera_Aplicaci%C3%B3n_en_Kumbia#Hola_Kumbia|Hola Kumbia]]
+
#Hola Kumbia
#[[Primera_Aplicaci%C3%B3n_en_Kumbia#Kumbia_URLS|Kumbia URLS]]
+
#Kumbia URLS
#[[Primera_Aplicaci%C3%B3n_en_Kumbia#Nuestra_Primera_Acci.C3.B3n|Nuestra Primera Acción]]
+
#Nuestra Primera Acción
#[[Primera_Aplicaci%C3%B3n_en_Kumbia#Agregando_m.C3.A1s_Contenido|Agregando más Contenido]]
+
#Agregando más Contenido
#[[Primera_Aplicaci%C3%B3n_en_Kumbia#Repitiendo_la_Historia|Repitiendo la Historia]]
+
#Repitiendo la Historia
 +
 
  
 
= TRABAJANDO CON KUMBIA PHP FRAMEWORK=
 
= TRABAJANDO CON KUMBIA PHP FRAMEWORK=
Línea 83: Línea 65:
 
=[[MODELOS]]=
 
=[[MODELOS]]=
  
#[[MODELOS#Introducción|Introducción]]
+
#Introducción
#[[MODELOS#¿Por qué usar una capa de Abstracción?|¿Por qué usar una capa de Abstracción?]]
+
#¿Por qué usar una capa de Abstracción?
#[[MODELOS#Capa de Abstracción Independiente en Kumbia|Capa de Abstracción Independiente en Kumbia ]]
+
#Capa de Abstracción Independiente en Kumbia
#[[MODELOS#Adaptadores Kumbia|Adaptadores Kumbia]]
+
#Adaptadores Kumbia
#[[MODELOS#Esquema de Acceso a BB.DD en Kumbia|Esquema de Acceso a BB.DD en Kumbia]]
+
#Esquema de Acceso a BB.DD en Kumbia
#[[MODELOS#Modelos|Modelos]]
+
#Modelos
##[[MODELOS#Características de los modelos:|Características de los modelos:]]
+
##Características de los modelos:
##[[MODELOS#Acceso Directo a RDBMS|Acceso Directo a RDBMS]]
+
##Acceso Directo a RDBMS
###[[MODELOS#La Clase DdBase|La Clase DdBase]]
+
###La Clase DdBase
###[[MODELOS#Propiedades de la Clase DB|Propiedades de la Clase DB]]
+
###Propiedades de la Clase DB
####[[MODELOS#$db->Id_Connection|$db->Id_Connection]]
+
####$db->Id_Connection
####[[MODELOS#$db->dbUser|$db->dbUser]]
+
####$db->dbUser
####[[MODELOS#$db->dbPass|$db->dbPass]]
+
####$db->dbPass
####[[MODELOS#$db->dbHost|$db->dbHost]]
+
####$db->dbHost
####[[MODELOS#$db->dbName|$db->dbName]]
+
####$db->dbName
####[[MODELOS#$db->dbPort|$db->dbPort]]
+
####$db->dbPort
####[[MODELOS#$db->lastError|$db->lastError]]
+
####$db->lastError
####[[MODELOS#$db->lastResultQuery|$db->lastResultQuery]]
+
####$db->lastResultQuery
###[[MODELOS#Métodos de la Clase DB|Métodos de la Clase DB]]
+
###Métodos de la Clase DB
####[[MODELOS#connect()|connect()]]
+
####connect()
####[[MODELOS#query()|query()]]
+
####query()
####[[MODELOS#close()|close()]]
+
####close()
####[[MODELOS#fetch_array()|fetch_array()]]
+
####fetch_array()
####[[MODELOS#field_name()|field_name()]]
+
####field_name()
####[[MODELOS#data_seek()|data_seek()]]
+
####data_seek()
####[[MODELOS#affected_rows()|affected_rows()]]
+
####affected_rows()
####[[MODELOS#error()|error()]]
+
####error()
####[[MODELOS#no_error()|no_error()]]
+
####no_error()
####[[MODELOS#find()|find()]]
+
####find()
####[[MODELOS#in_query()|in_query()]]
+
####in_query()
####[[MODELOS#in_query_assoc()|in_query_assoc()]]
+
####in_query_assoc()
####[[MODELOS#in_query_num()|in_query_num()]]
+
####in_query_num()
####[[MODELOS#fetch_one()|fetch_one()]]
+
####fetch_one()
####[[MODELOS#table_exists()|table_exists()]]
+
####table_exists()
  
==[[ActiveRecord|ACTIVE RECORD]]==
+
=[[ActiveRecord]]=
  
 
#[[ActiveRecord#Ventajas del ActiveRecord|Ventajas del ActiveRecord]]
 
#[[ActiveRecord#Ventajas del ActiveRecord|Ventajas del ActiveRecord]]
Línea 125: Línea 107:
 
#[[ActiveRecord#Llaves Primarias y el uso de IDs|Llaves Primarias y el uso de IDs]]
 
#[[ActiveRecord#Llaves Primarias y el uso de IDs|Llaves Primarias y el uso de IDs]]
  
===[[CRUD|CRUD: Create, Read, Update, Delete]]===
+
==[[CRUD|CRUD: Create, Read, Update, Delete]]==
  
 
#[[CRUD#Creando Registros|Creando Registros]]
 
#[[CRUD#Creando Registros|Creando Registros]]
Línea 135: Línea 117:
 
#[[CRUD#Propiedades Soportadas|Propiedades Soportadas]]
 
#[[CRUD#Propiedades Soportadas|Propiedades Soportadas]]
  
===[[Convenciones en ActiveRecord]]===
+
==[[Convenciones en ActiveRecord]]==
  
 
#[[Convenciones en ActiveRecord#Convenciones Generales|Convenciones Generales]]
 
#[[Convenciones en ActiveRecord#Convenciones Generales|Convenciones Generales]]
#[[Convenciones en ActiveRecord#id|id]]
+
#[[Convenciones en ActiveRecord#Id|Id]]
#[[Convenciones en ActiveRecord#campo_id|campo_id]]
+
#[[Convenciones en ActiveRecord#Campo_id|Campo_id]]
#[[Convenciones en ActiveRecord#campo_at|campo_at]]
+
#[[Convenciones en ActiveRecord#Campo_at|Campo_at]]
#[[Convenciones en ActiveRecord#campo_in|campo_in]]
+
#[[Convenciones en ActiveRecord#Campo_in|Campo_in]]
  
===[[Convenciones para RDBMs]]===
+
==[[Convenciones para RDBMs]]==
  
 
#[[Convenciones para RDBMs#Convenciones Especiales para PostgreSQL|Convenciones Especiales para PostgreSQL]]
 
#[[Convenciones para RDBMs#Convenciones Especiales para PostgreSQL|Convenciones Especiales para PostgreSQL]]
 
#[[Convenciones para RDBMs#Convenciones Especiales para Oracle|Convenciones Especiales para Oracle]]
 
#[[Convenciones para RDBMs#Convenciones Especiales para Oracle|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:
 
#[[Consultas#distinct|distinct]]
 
#[[Consultas#find_all_by_sql(string $sql)|find_all_by_sql(string $sql)]]
 
#[[Consultas#find_by_sql(string $sql)|find_by_sql(string $sql)]]
 
#[[Consultas#find_first|find_first]]
 
#[[Consultas#find|find]]
 
#[[Consultas#select_one(string $select query)|select_one(string $select query)]]
 
#[[Consultas#select_one(string $select query) (static)|select_one(string $select query) (static)]]
 
#[[Consultas#exists|exists]]
 
#[[Consultas#find_all_by|find_all_by]]
 
#[[Consultas#find_by_*campo*|find_by_*campo*]]
 
#[[Consultas#find_all_by_*campo*|find_all_by_*campo*]]
 
  
===[[Conteos y Sumatorias]]===
+
=[[Active Record API]]=
  
#[[Conteos y Sumatorias#count|count]]
+
==[[Consultas]]==
#[[Conteos y Sumatorias#sum|sum]]
 
#[[Conteos y Sumatorias#count_by_sql|count_by_sql]]
 
  
===[[Promedios, Máximo y Mínimo]]===
+
#distinct
 +
#find_all_by_sql(string $sql)
 +
#find_by_sql(string $sql)
 +
#find_first
 +
#find
 +
#select_one(string $select query)
 +
#select_one(string $select query) (static)
 +
#exists
 +
#find_all_by
 +
#find_by_*campo*
 +
#find_all_by_*campo*
  
#[[Promedios,_M%C3%A1ximo_y_M%C3%ADnimo#average|average]]
+
==[[Conteos y Sumatorios]]==
#[[Promedios,_M%C3%A1ximo_y_M%C3%ADnimo#maximum|maximum]]
 
#[[Promedios,_M%C3%A1ximo_y_M%C3%ADnimo#minimum|minimum]]
 
  
===[[Creación-Actualización-Borrado de Registros]]===
+
#count
 +
#sum
 +
#count_by_sql
 +
 
 +
==[[Promedios, Máximo y Mínimo]]==
 +
 
 +
#average
 +
#maximum
 +
#minimum
 +
 
 +
==[[Creación-Actualización-Borrado de Registros]]==
  
 
#[[Creación-Actualización-Borrado de Registros#create|create]]
 
#[[Creación-Actualización-Borrado de Registros#create|create]]
Línea 188: Línea 170:
 
#[[Creación-Actualización-Borrado de Registros#delete_all|delete_all]]
 
#[[Creación-Actualización-Borrado de Registros#delete_all|delete_all]]
  
===[[Validación]]===
+
==[[Validación]]==
  
#[[Validación#validates_presence_of|validates_presence_of]]
+
#validates_presence_of
#[[Validación#validates_length_of|validates_length_of]]
+
#validates_length_of
#[[Validación#validates_numericality_of|validates_numericality_of]]
+
#validates_numericality_of
#[[Validación#validates_email_in|validates_email_in]]
+
#validates_email_in
#[[Validación#validates_uniqueness_of|validates_uniqueness_of]]
+
#validates_uniqueness_of
#[[Validación#validates_date_in|validates_date_in]]
+
#validates_date_in
#[[Validación#validates_format_of|validates_format_of]]
+
#validates_format_of
  
===[[Transacciones]]===
+
==[[Transacciones]]==
  
 
#[[Transacciones#commit()|commit()]]
 
#[[Transacciones#commit()|commit()]]
Línea 204: Línea 186:
 
#[[Transacciones#rollback()|rollback()]]
 
#[[Transacciones#rollback()|rollback()]]
  
===[[Otros Métodos]]===
+
==[[Otros Métodos]]==
 
 
#[[Otros Métodos#sql(string $sql)|sql(string $sql)]]
 
 
 
===[[Callbacks ActiveRecord]]===
 
 
 
#[[Callbacks ActiveRecord#Introduccion|Introduccion]]
 
#[[Callbacks ActiveRecord#before_validation|before_validation]]
 
#[[Callbacks ActiveRecord#before_validation_on_create|before_validation_on_create]]
 
#[[Callbacks ActiveRecord#before_validation_on_update|before_validation_on_update]]
 
#[[Callbacks ActiveRecord#after_validation_on_create|after_validation_on_create]]
 
#[[Callbacks ActiveRecord#after_validation_on_update|after_validation_on_update]]
 
#[[Callbacks ActiveRecord#after_validation|after_validation]]
 
#[[Callbacks ActiveRecord#before_save|before_save]]
 
#[[Callbacks ActiveRecord#before_update|before_update]]
 
#[[Callbacks ActiveRecord#before_create|before_create]]
 
#[[Callbacks ActiveRecord#after_update|after_update]]
 
#[[Callbacks ActiveRecord#after_create|after_create]]
 
#[[Callbacks ActiveRecord#after_save|after_save]]
 
#[[Callbacks ActiveRecord#before_delete|before_delete]]
 
#[[Callbacks ActiveRecord#after_delete|after_delete]]
 
 
 
===[[Asociaciones]]===
 
 
 
#[[Asociaciones#Introducción|Introducción]]
 
#[[Asociaciones#Pertenece (belongs_to)|Pertenece (belongs_to)]]
 
#[[Asociaciones#Tiene un (has_one)|Tiene un (has_one)]]
 
#[[Asociaciones#Tiene muchos (has_many)|Tiene muchos (has_many)]]
 
#[[Asociaciones#Tiene y pertenece a muchos (has_and_belongs_to_many)|Tiene y pertenece a muchos (has_and_belongs_to_many)]]
 
 
 
===[[Paginadores]]===
 
 
 
#[[Paginadores#Paginate|Paginate]]
 
#[[Paginadores#Paginate_by_sql|Paginate_by_sql]]
 
#[[Paginadores#Paginando en ActiveRecord|Paginando en ActiveRecord]]
 
#[[Paginadores#Ejemplo completo de uso del paginador|Ejemplo completo de uso del paginador]]
 
 
 
=[[Application controller| APPLICATION CONTROLLER]]=
 
=== [[Application_controller#M.C3.A9todos_de_la_Clase_ApplicationController| Métodos de la Clase ApplicationController]] ===
 
La clase posee una serie de métodos que son útiles para el trabajo con controladores.
 
= 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
 
 
 
== redirect($url, $seconds=0.5) ==
 
Redirecciona la ejecución a otro controlador en un tiempo de ejecución determinado
 
 
 
'''Ejemplos de uso:'''
 
  <?php
 
    class ProductosController extends ApplicationController {
 
      function index(){
 
        $this->redirect('facturas/nueva', 2);
 
      }
 
    }
 
  ?>
 
 
 
En el ejemplo va a facturas/nueva después de 2 segundos
 
 
 
== post($value) ==
 
 
 
    Obtiene acceso orientado a objetos a los valores de $_POST, $value es el índice para pasar
 
al array asociativo.
 
 
 
== get($value) ==
 
 
 
    Obtiene acceso orientado a objetos a los valores de $_GET, $value es el índice para pasar al array asociativo.
 
 
 
== request($value) ==
 
 
 
    Obtiene acceso orientado a objetos a los valores de $_REQUEST, $value es el índice para pasar al
 
array asociativo.
 
 
 
== render_partial($name) ==
 
Visualiza una vista parcial (partial) que pertenece al mismo controlador. Ejemplo:
 
 
 
'''Ejemplos de uso:'''
 
  <?php
 
    class ProductosController extends ApplicationController {
 
        function index(){
 
            $this->render_partial('mostrar_menu');
 
        }//fin del metodo
 
      }//fin de la clase
 
  ?>
 
 
 
En este caso se visualizaría la vista parcial views/productos/_mostrar_menu.phtml
 
 
 
== route_to([params: valor]) ==
 
  Hace el enrutamiento desde un controlador a otro, o desde una acción a otra. Recibe los parámetros
 
con nombre:
 
      • controller: A qué controlador se va a redireccionar
 
      • action: A que acción se va a redireccionar
 
      • id: Id de la redirección
 
 
 
'''Ejemplos:'''
 
return $this->route_to("controller: clientes", "action: consultar", "id:1");
 
 
 
El tipo de enrutamiento que realiza es interno, es decir que lo usuarios no notan cuando están siendo redireccionados en la aplicación.
 
 
 
== redirect($url_controlador) ==
 
    Realiza un redireccionamiento a otro controlador/accion mediante HTTP. Es útil cuando queremos hacer
 
una real redirección que incluso cambie la URL que aparece en el explorador.
 
 
 
'''Ejemplo:'''
 
$this->redirect(“/productos/query”);
 
 
 
== cache_layout($minutes) ==
 
    Caché de la vista views/layout/ correspondiente al controlador durante $minutes.
 
 
 
== not_found($controller, $action) ===
 
    Puedes definir el método not_found en cualquier controlador, en caso de estar definido se llamará
 
cuando no encuentre definida alguna acción así es más fácil controlar este tipo de errores:
 
 
 
''' Ejemplo '''
 
  <?php
 
    class PruebaController extends ApplicationController {
 
        function index(){
 
            $this->render_text("Este es el index");
 
        }
 
        function not_found($controller, $action){
 
            Flash::error("No esta definida la accion $action, redireccionando a index...");
 
            return $this->route_to('action: index');
 
        }
 
    }
 
  ?>
 
 
 
NOTA: Ahora en la versión 0.5 se incluye un vista views/not_found.phtml, esto
 
hace que no se haga necesario la implementacion del metodo not_found, ya que cuando no exista un controller o una acción se renderizara dicha vista, esta puede ser totalmente personalizada de manera que sea mas comodo el desarrollo.
 
 
 
== set_response($type)==
 
    Especifica el tipo de respuesta que va a generar el controlador. Cuando es el valor de $type
 
es view solamente envía la salida de la vista más no del layout, el template o cualquier cabecera
 
html. Es ideal en salidas AJAX o PDF. Otro valor para $type es XML.
 
 
 
'''Ejemplo'''
 
  <?php
 
    class PruebaController extends ApplicationController {
 
        function accion_ajax(){
 
            $this->set_response(“view”);
 
        }
 
    }
 
  ?>
 
 
 
== is_alnum($valor) ==
 
Evalúa si un campo es alfanumérico o no. Es útil para validar la entrada de datos al
 
recibirlos por parte de usuarios.
 
 
 
  <?php
 
    class PruebaController extends ApplicationController {
 
        function adicionar(){
 
          $nombre = $this->request(“nombre”);
 
          if($this->is_alnum($nombre)==false){
 
              Flash::error(“Entrada invalidad para precio”);
 
              return;
 
            }
 
          /* ..*/
 
      }
 
    }
 
  ?>
 
 
 
== load_record($record) ==
 
Carga los campos de un registro ActiveRecord como atributos del controlador, recibe
 
como parámetro $record ActiveRecord o string registro ActiveRecord a cargar, si es un
 
string este debe corresponder al nombre de un modelo Soporta argumento variable.
 
    field: campos a cargar separados por coma
 
    except: campos que no se cargaran separados por coma
 
    suffix: sufijo para el atributo en el controlador
 
    preffix: prefijo para el atributo en el controlador
 
 
 
//Ejemplo1:
 
$usuario = $this->Usuario->find(1);
 
$this->load_record($usuario);
 
 
 
//Ejemplo2:
 
$usuario = $this->Usuario->find();
 
$this->load_record($usuario, 'except: id, sexo');
 
  
//Ejemplo3:
+
#sql(string $sql)
$usuario = $this->Usuario->find(0);
 
$this->load_record($usuario, 'field: nombre, apellido');
 
  
//Ejemplo4:
+
==[[Callbacks ActiveRecord]]==
$usuario = $this->Usuario->find(1);
 
$this->load_record($usuario, 'preffix: c_');
 
  
//Ejemplo5:
+
#Introduccion
$this->load_record('Usuario');
+
#before_validation
 +
#before_validation_on_create
 +
#before_validation_on_update
 +
#after_validation_on_create
 +
#after_validation_on_update
 +
#after_validation
 +
#before_save
 +
#before_update
 +
#before_create
 +
#after_update
 +
#after_create
 +
#after_save
 +
#before_delete
 +
#after_delete
  
//Ejemplo6:
+
[[Asociaciones]]
$this->load_record('Usuario', 'field: nombre, apellido');
 
  
== is_numeric($valor) ==
+
[[Paginadores]]
Evalúa si un campo es numérico o no. Es útil para validar la entrada de datos al recibirlos por parte de usuarios.
 
  
  <?php
+
[[Ejemplo Completo]]
    class PruebaController extends ApplicationController {
 
      function adicionar(){
 
          $precio = $this->request(“precio”);
 
          if($this->is_numeric($precio)!= '1'){
 
                Flash::error(“Entrada invalida para precio”);
 
                return;
 
          }
 
          /* ..*/
 
      }
 
    }
 
  ?>
 
  
===[[Obtener valores desde el controller]] ===
+
= Application controller =
  
===[[ApplicationControllerBase| ApplicationControllerBase (Clase padre)]] ===
+
= Views y helpers =
  
===[[Enrutamiento y redirecciones]] ===
 
  
=[[Vistas|VISTAS Y HELPERS]]=
+
= Ajax =
  
#[[Vistas#¿Porque usar Vistas?|¿Porque usar vistas?]]
 
===[[Vistas#Uso de Vistas|Vistas]]===
 
===[[Vistas#Uso de Layouts|Layouts]]===
 
===[[Vistas#Uso de Templates|Templates]]===
 
===[[Vistas#Uso de Partials|Partials]]===
 
===[[Vistas#Uso de CCS en Kumbia|CCS en KumbiaPHP]]===
 
===[[Vistas#Uso de content()|content()]]===
 
==[[Vistas#|Helpers]]==
 
  
=[[AJAX]]=
+
= Modulos extras =
  
=[[EXTENSIONS (Módulos extras de KumbiaPHP)]]=
 
==[[Filter]]==
 
  
#[[Filter#Qu.C3.A9_es_un_Filtro| Qué es un Filtro?]]
+
= Generador de formularios =
#[[Filter#Utilizaci.C3.B3n_B.C3.A1sica| Utilización básica]]
 
#[[Filter#M.C3.A9todos_de_la_clase_Filter| Métodos de la clase Filter]]
 
  
=[[GENERADOR DE FORMULARIOS]]=
 
  
#[[GENERADOR DE FORMULARIOS#|Tipos de Formularios]]
+
= Ejemplos =
#[[GENERADOR DE FORMULARIOS#|Ventajas Generadores de Formularios]]
 
#[[GENERADOR DE FORMULARIOS#|Desventajas Generadores de Formularios]]
 
  
=[[EJEMPLOS]]=
 
  
=[[GLOSARIO]]=
+
= Glosarios =

Ten en cuenta que todas las contribuciones a KumbiaPHP Framework Wiki pueden ser editadas, modificadas o eliminadas por otros colaboradores. Si no deseas que las modifiquen sin limitaciones, no las publiques aquí.
Al mismo tiempo, asumimos que eres el autor de lo que escribiste, o lo copiaste de una fuente en el dominio público o con licencia libre (véase Proyecto:Derechos de autor para más detalles). ¡No uses textos con copyright sin permiso!

Para editar esta página, responde la pregunta que aparece abajo (más información):

Cancelar Ayuda de edición (se abre en una ventana nueva)