You are on page 1of 8

UNIVERSIDAD DE GUAYAQUIL

FACULTAD DE CIENCIAS MATEMÁTICAS Y FÍSICAS


CARRERA DE INGENIERÍA EN SISTEMAS COMPUTACIONALES
DESARROLLO DE APLICACIONES WEB

PRACTICA DE CLASE: TRABAJANDO CON LARAVEL

PARTE 1: INSTALACIÓN

1. Para esta práctica es necesario tener instalado php en su computador.


2. Descargar e instalar el administrador de dependencias de php: composer:
Composer es un gestor de dependencias en proyectos, para programación en PHP. Eso quiere decir
que nos permite gestionar (declarar, descargar y mantener actualizados) los paquetes de software
en los que se basa nuestro proyecto PHP.

https://getcomposer.org/download/

3. Utilizando la consola de comandos de windows crear un proyecto bajo framework laravel.


a. Abrir la consola de comandos y ubicarse en el directorio htdocs.

cd C:\xampp\htdocs

b. Crear un proyecto bajo framework laravel.

composer create-project --prefer-dist laravel/laravel proyectoDAW

4. Ahora tendrás la carpeta proyectoDAW en el directorio htdocs, dentro de ella está la estructura de
un proyecto bajo framework laravel.

Puedes revisar que el proyecto este ejecutándose correctamente

http://localhost/proyectoDAW/public/
UNIVERSIDAD DE GUAYAQUIL
FACULTAD DE CIENCIAS MATEMÁTICAS Y FÍSICAS
CARRERA DE INGENIERÍA EN SISTEMAS COMPUTACIONALES
DESARROLLO DE APLICACIONES WEB

A lo largo de esta práctica revisaremos algunas secciones de la estructura de laravel

PARTE 2: CONFIGURACIONES BÁSICAS

1. Cambiar espacio de nombres.

Por defecto el namespace de la aplicación es App

Utilizaremos artisan para cambiar el nombre de la aplicación. Artisan es la interfaz de línea de comandos de
laravel

cd C:\xampp\htdocs\proyectoDAW

php artisan app:name Miapp

agregar resultado aqui

2. Agregar debug a la aplicación. Mientras desarrollas tu proyecto necesitaras que el debug este
activo, una vez que esté en producción deberá ser desactivado.

Las configuraciones de nuestro proyecto se encuentran en el directorio config. Revisa un poco los
archivos app.php y database.php.
Como habrás visto gran parte de las configuraciones de estos archivos vienen de la función
env(..,..), la cual se encarga de leer los parámetros de configuración del archivo .env. Ubica este
archivo dentro de tu proyecto y cambia los valores: APP_NAME=Miapp, APP_DEBUG=true
Cambia los valores de APP_DEBUG de true a false y revisa que sucede cuando en el browser colocas
http://localhost/proyectoDAW/public/algo

3. Adicionalmente configura las constantes para conexión a base de datos, utiliza una base ya
existente en tu computador.
UNIVERSIDAD DE GUAYAQUIL
FACULTAD DE CIENCIAS MATEMÁTICAS Y FÍSICAS
CARRERA DE INGENIERÍA EN SISTEMAS COMPUTACIONALES
DESARROLLO DE APLICACIONES WEB

agregar resultado aqui

4. En el archivo config/app.php cambia la zona de tiempo de tu aplicación: 'timezone' =>


'America/Bogota',
5. En el mismo archivo cambia el lenguaje local a español 'locale' => 'es',

Para cambiar de idioma es necesario que cuentes con el paquete de idiomas. Aquí podemos encontrar
las carpetas para cada lenguaje: https://github.com/caouecs/Laravel-lang/tree/master/src. Para esta
práctica utiliza los archivos dados, pega la carpeta es en resources/Lang

Nota: Cuando realizamos cambios en configuraciones es recomendable limpiar la cache de config.

php artisan config:clear

PARTE 3: RUTAS Y MVC EN LARAVEL

De manera sencilla podemos decir que laravel


funciona así: El usuario realiza peticiones, las cuales
son enrutadas, el enrutador le notifica al controlador
esa petición, el controlador procesa la petición y
decide si ir al modelo (el cual retorna datos al
controlador), envía datos a la vista y la vista muestra
los datos.
UNIVERSIDAD DE GUAYAQUIL
FACULTAD DE CIENCIAS MATEMÁTICAS Y FÍSICAS
CARRERA DE INGENIERÍA EN SISTEMAS COMPUTACIONALES
DESARROLLO DE APLICACIONES WEB

1. Agregar dos nuevas rutas. Las rutas para nuestra aplicación se encuentran en routes/web.php

// creamos nueva ruta


// uri nombre
// variable nombre lee el nombre de la app que está en config
Route::get('/nombre', function () {
$nombre = config('app.name'); //uso de helper config para acceder a las variables de configuracion
return $nombre;
});
Route::get('/tiempo', function () {
$time = config('app.timezone'); //uso de helper config para acceder a las variables de configuracion
return $tiempo;
});

Revisa tu resultado http://localhost/proyectoDAW/public/nombre

http://localhost/proyectoDAW/public/tiempo

agregar resultado aquí

2. Crear un controlador básico


cd C:\xampp\htdocs\proyectoDAW

php artisan make:controller SaludoController

Ubica tu nuevo controlador en la ruta app\Http\Controllers y agrega las siguientes funciones:


public function index(){
return "Hola desde un controlador";
}
UNIVERSIDAD DE GUAYAQUIL
FACULTAD DE CIENCIAS MATEMÁTICAS Y FÍSICAS
CARRERA DE INGENIERÍA EN SISTEMAS COMPUTACIONALES
DESARROLLO DE APLICACIONES WEB

public function index2($name, $email){


return view('saludo.misaludo',compact('name','email'));
}
Como puedes observar la primera función retorna una cadena de texto que será la respuesta mostrada en
el browser. La segunda función envía los datos a una vista. Para indicar la ruta de la vista que está en
resources\views\saludo\ misaludo.blade.php se utiliza saludo.misaludo

3. Crear la vista. Las vistas de nuestro proyecto se encuentran en resources\views. Crear la carpeta saludo y
dentro el archivo misaludo.blade.php

4. Agregar lo siguiente:
<div><?php echo 'un saludo para todos'; ?></div>
<!--utilizando blade-->
<p>Perfil de {{$name}}</p>
<p> Email:{{$email}} </p>

Blade nos provee de muchas ventajas, además de modularizar nuestras vistas de una forma sorprendente,
también nos permite usar estructuras de control y variables de PHP directamente en ellas, aunque esto ya
era posible antes usando las etiquetas de php, por ejemplo: <?php echo $pastel ?> con blade: {{ $pastel }}

5. Agrega una ruta a tu archivo de rutas web.php

// PETICION PROCESADA POR SaludoController accion index


Route::get('/saludo', 'SaludoController@index');

Route::get('/saludo/{name}/{email}', 'SaludoController@index2');

Prueba tus resultados


http://localhost/proyectoDAW/public/saludo
http://localhost/proyectoDAW/public/saludo/Miguel/miguel@outlook.com

agregar resultado aquí


UNIVERSIDAD DE GUAYAQUIL
FACULTAD DE CIENCIAS MATEMÁTICAS Y FÍSICAS
CARRERA DE INGENIERÍA EN SISTEMAS COMPUTACIONALES
DESARROLLO DE APLICACIONES WEB

6. Podemos aprovechar para revisar la lista de rutas que hasta ahora tiene la aplicación.
cd C:\xampp\htdocs\proyectoDAW

php artisan route:list

agregar resultado aquí

PARTE 4: Migración de datos

1. Crear una base de datos para ejemplo con charset utf8_unicode_ci

2. En config/database.php verificar charset y collation

'mysql' => [
'driver' => 'mysql',
'host' => env('DB_HOST', '127.0.0.1'),
'port' => env('DB_PORT', '3306'),
'database' => env('DB_DATABASE', 'forge'),
'username' => env('DB_USERNAME', 'forge'),
'password' => env('DB_PASSWORD', ''),
'unix_socket' => env('DB_SOCKET', ''),
'charset' => 'utf8',
'collation' => 'utf8_unicode_ci',
'prefix' => '',
'strict' => true,
'engine' => null,
UNIVERSIDAD DE GUAYAQUIL
FACULTAD DE CIENCIAS MATEMÁTICAS Y FÍSICAS
CARRERA DE INGENIERÍA EN SISTEMAS COMPUTACIONALES
DESARROLLO DE APLICACIONES WEB

],

3. Cambie los parámetros de la base de datos en el archivo .env por la nueva base de datos creada en
el paso 1.
4. Crear una migración

php artisan make:migration create_habitacion_table --create=habitacion

5. Ubica el archivo creado en database\migrations y agregar campos a la tabla

public function up()


{
Schema::create('habitacions', function (Blueprint $table) {
$table->increments('id');
$table->string('numero');
$table->double('precio');
$table->string('descripcion');
$table->timestamps();

});
}

6. Realizar la migración a la base de datos

php artisan migrate

Revisa tu base de datos ahora

agregar resultado aquí


UNIVERSIDAD DE GUAYAQUIL
FACULTAD DE CIENCIAS MATEMÁTICAS Y FÍSICAS
CARRERA DE INGENIERÍA EN SISTEMAS COMPUTACIONALES
DESARROLLO DE APLICACIONES WEB

Puedes revisar más acerca de las migraciones en https://laravel.com/docs/5.4/migrations#creating-


tables

Nota: Para realizar un Rollback de las migraciones: php artisan migrate:reset

You might also like