Desarrollando aplicaciones web con CodeIgniter
Durante los últimos meses estuve investigando y analizando diferentes alternativas para agilizar los desarrollos dentro de nuestra empresa, la consultora Arzion Srl nuestros desarrollos. En este mismo tiempo, uno de mis clientes me solicitó llevar adelante un proyecto utilizando para el desarrollo del mismo el framework open source CodeIgniter. Gran sorpresa me llevé al descubrir la potencia de este conjunto de librerías y como las mismas facilitan el día a día de los programadores web.
Motivado entonces por transmitir todo lo que voy aprendiendo sobre este framework día a día comenzaré con una serie de artículos en la que iré compartiendo con los lectorla experiencia adquirida con CodeIgniter.
Les recomiendo sigan la siguiente documentación PHP Style Guide a la hora de programar con CodeIgniter.
Índice de artículos sobre CodeIgniter
- Artículo 1 "Personalizando la estructura de carpetas"
- Artículo 2 "Entornos de configuración dinámica"
- Artículo 3 "El archivo application.php"
- Artículo 4 "5 excelentes screencasts sobre codeigniter"
Contenido aleatorio
A que desarrollador no le ha pasado que durante la fase de testeo de una aplicacion que usa una base de datos, nos da fiaca completar las tablas con registros de prueba.
Motivado por esta necesidad, desarrollé un plugin para CodeIgniter, el framework con el que actualmente estamos desarrollando, que nos permite generar registros de datos aleatorios de diferentes tipos. Entre ellos strings, enteros, decimales, contraseñas, emails, parrafos de texto varchar, y muchos otros.
Aquellos que quieran ver el funcionamiento del plugin, pueden hacer click aquí
Espero que sea de utilidad para toda la comunidad de desarrolladores.
Url en CodeIgniter
Las urls, bajo el framework CodeIgniter, fueron creadas de tal modo que por defecto sean amigables tanto para el ojo humano como para el estómago de los motores de búsqueda (search engines). En reemplazo del esquema comumente utilizado por websites dinámicos, como lo es el de parámetros por querystring, CodeIgniter se apoya en uno de partes / segmentos. Por ejemplo: www.juanrabadan.com.ar/notas/leer/1
Nota: Si precisamos utilizar los querystring, podemos habilitarlo en el archivo de configuración.Composición de la URI
Las partes o segmentos en las URL, siguiendo con el paradigma del modelo MVC (modelo - vista - controlador), podemos representarlas con el siguiente ejemplo.
www.juanrabadan.com.ar/class/function/ID
1. El primer segmento representa la clase del controlador que debería ser invocado.
2. El segundo segmento representa la función de esta clase, o el método que debería ser llamado.
3. El tercer segmento y cualquier segmento adicional, representa el ID y cualquier otra variable que será pasada al controlador.
La clase URI y el helper URL contienen diferentes funciones que hacen muy fácil trabajar con la información contenida en las URI. En adición, cualquier URL puede ser remapeada utilizando la característica de URI Routing para obtener mayor flexibilidad.
Como remover "index.php" en las URL de CodeIgniter
Por defecto, el archivo index.php será incluido en todas las URLs:
www.juanrabadan.com.ar/index.php/notas/leer/1
Podemos remover fácilmente el segmento index.php de todas las URLs de nuestra aplicación. Para eso debemos incluir las siguientes linesas en nuestro archivo .htaccess situado en la raíz de la aplicación.
RewriteEngine on RewriteCond $1 !^(index\.php|images|robots\.txt) RewriteRule ^(.*)$ /index.php/$1 [L]
En el ejemplo anterior, cualquier petición HTTP que no sea explicitamente index.php, images ó robots.txt es tratado como una petición para index.php.
Agregando sufijos a las URL
En el archivo config.php de nuestra aplicación (/system/application/config/config.php) podemos especificar un sufijo que será agregado por defecto a todas las URLs generadas por CodeIgniter. Por ejemplo si la URL es esta:
www.juanrabadan.com.ar/servicios/ver/consultoria
Podemos agregar de manera opcional, el sufijo .html, haciendo que la URL se parezca más a una página de un cierto tipo. De esta forma la URL nos quedaría
www.juanrabadan.com.ar/servicios/ver/consultoria.html
La información fue extraída del manual online de CodeIgniter