Controladores CodeIgniter, enrutamiento de vistas: aprender con la aplicación de ejemplo

Tabla de contenido:

Anonim

En este tutorial, aprenderá los siguientes temas.

  • Enrutamiento : el enrutamiento es responsable de responder a las solicitudes de URL. El enrutamiento hace coincidir la URL con las rutas predefinidas. Si no se encuentra ninguna coincidencia de ruta, CodeIgniter lanza una página no encontrada como una excepción.
  • Controladores : las rutas están vinculadas a los controladores. Los controladores pegan los modelos y las vistas. La solicitud de datos / lógica empresarial del modelo y devuelve los resultados en la presentación de la vista. Una vez que una URL se ha asociado a una ruta, se reenvía a la función pública de un controlador. Esta función interactúa con la fuente de datos, la lógica empresarial y devuelve la vista que muestra los resultados.
  • Vistas : las vistas son responsables de la presentación. Una vista suele ser una combinación de HTML, CSS y JavaScript. Esta es la parte que se encarga de mostrar la página web al usuario. Por lo general, los datos que se muestran se obtienen de la base de datos o de cualquier otra fuente de datos disponible.

En este tutorial, aprenderá:

  • Cómo crear un nuevo proyecto CodeIgniter
  • Enrutamiento CodeIgniter
  • Crear una ruta
  • Crear un controlador
  • Crear una vista

Cómo crear un nuevo proyecto CodeIgniter

Usaremos Composer para crear un nuevo proyecto. Usaré el servidor PHP incorporado, por lo que no es necesario tener software adicional como Apache. En este tutorial, usamos el sistema operativo Windows. Por lo tanto, hemos creado una carpeta Sitios en la unidad C. Puede usar cualquier directorio que sea adecuado para usted.

Abra la línea de comando / terminal y ejecute el siguiente comando

cd C:\Sites

Ahora crearemos un proyecto CodeIgniter usando Composer. Ejecute el siguiente comando

composer create-project CodeIgniter/framework ci-app

AQUÍ,

  • El comando anterior crea una nueva versión 3 del proyecto CodeIgniter usando la última versión estable, es decir, 3.1.9 en un directorio ci-app.

Cuando el comando anterior haya terminado de ejecutarse, debería poder obtener resultados similares a los siguientes en la terminal

Ejecute el siguiente comando para buscar el directorio del proyecto recién creado ci-app

cd ci-app

Comencemos ahora el servidor web incorporado de PHP

 php -S localhost:3000 

AQUÍ,

  • El comando anterior inicia el servidor PHP incorporado que se ejecuta en el puerto 3000.

Abra el navegador web y navegue por la siguiente URL

http: // localhost: 3000 /

Obtendrá la siguiente página

Si puede ver la página anterior, felicitaciones, ha instalado CodeIgniter correctamente.

Como puede leer en la página web anterior, la página que se muestra arriba es representada por la vista ubicada en application / views / welcome_message.php y el controlador responsable se encuentra en application / controllers / Welcome.php

Enrutamiento CodeIgniter

Por ahora, nuestra aplicación solo tiene una URL que es la página de inicio. En esta sección, personalizaremos la sección de inicio. Crearemos algunas URL nuevas que responderán a las diferentes solicitudes.

Comencemos con la ruta de la página de inicio.

Abra el archivo de rutas como se indica en la ruta a continuación

application/config/routes.php
Debería poder ver el siguiente contenido
$route['default_controller'] = 'welcome';$route['404_override'] = '';$route['translate_uri_dashes'] = FALSE;

AQUÍ,

  • $ route ['default_controller'] = 'bienvenido'; define el controlador predeterminado que responde a las solicitudes de URI
  • $ ruta ['404_override'] = ''; esta ruta le permite definir una ruta personalizada para errores 404. Se produce un error 404 cuando no se encuentra una página. CodeIgniter tiene un controlador predeterminado para el error, pero puede definir el suyo si así lo desea.
  • $ ruta ['translate_uri_dashes'] = FALSE; esta opción le permite traducir guiones a guiones bajos. Hablaremos de esta opción cuando veamos cómo funcionan las rutas en CodeIgniter.

Veamos ahora el método del controlador responsable de mostrar la página de inicio que vimos cuando abrimos la URL http: // localhost: 3000 / en el navegador web.

Abra el siguiente archivo

application/controllers/Welcome.php

Debería poder ver el siguiente código

load->view('welcome_message');}}

AQUÍ,

  • Definido ('BASEPATH') OR exit ('No se permite el acceso directo al script'); protege contra el acceso directo a la clase del controlador sin pasar por el archivo index.php. Recuerde, en el paradigma MVC todas las solicitudes tienen un único punto de entrada, y para CodeIgniter, su index.php. Este código bloquea todas las solicitudes que no llegan a través de index.php
  • class Welcome amplía CI_Controller {…} define una clase Welcome que amplía la clase padre CI_Controller
  • public function index () define una función pública que se llama de forma predeterminada cuando abre la página de inicio
  • $ this-> load-> view ('welcome_message'); esta línea carga la vista welcome_message. El archivo welcome_message se encuentra en el directorio application / views / welcome_message.php

Hasta ahora, solo hemos explorado lo que viene de fábrica con CodeIgniter, ahora intentemos hacer algunos cambios. Crearemos nuestra página de inicio y reemplazaremos la página predeterminada

Cree un nuevo archivo en application / views / home.php

Agrega el siguiente código a home.php

Hello CodeIgniter!

CodeIgniter Hello World

AQUÍ,

El código HTML anterior carga el marco SSS de Birmania y la fuente de la red CDN crea un documento HTML muy básico. Aplica una regla CSS muy simple del marco CSS de Birmania.

Abra la siguiente URL en su navegador

http: // localhost: 3000 /

Debería poder ver lo siguiente

Genial, acabamos de modificar con éxito la página de inicio. Continuando, definamos nuestra ruta. Supongamos que nuestra aplicación también debe poder mostrar la página sobre nosotros.

Crear una ruta

Abra el archivo de rutas application / config.routes.php

Agrega la siguiente ruta

$route['about-us'] = 'welcome/about_us';

AQUÍ,

  • Cuando un visitante visita la URL / about-us, le indicamos a CodeIgniter que busque un controlador Welcome y ejecute el método about_us.

Crear un controlador

Definamos ahora el método del controlador sobre nosotros.

Aplicación abierta / controladores / Welcome.php

Agrega el siguiente método

public function about_us(){$this->load->view('about_us');}

AQUÍ,

  • El código anterior define una función about_us y carga una vista about_us.

Crear una vista

Creemos ahora la vista a la que acabamos de hacer referencia en la sección anterior.

Cree un nuevo archivo about_us.php en application / views / about_us.php

Agrega el siguiente código

About CodeIgniter!

About us yap…

Estamos listos, abra la siguiente URL en su navegador web

http: // localhost: 3000 / index.php / about-us

Verás la siguiente página

Si puede ver la página anterior, felicitaciones, ha creado con éxito una aplicación simple en CodeIgniter.

Resumen

En este tutorial, cubrimos tres (3) componentes principales que componen una aplicación CodeIgniter. Analizamos las rutas y cómo definirlas, los controladores y cómo crear métodos que respondan a las solicitudes de ruta y creamos vistas simples que se devuelven a los usuarios cuando solicitan un recurso.