0% encontró este documento útil (0 votos)
47 vistas11 páginas

Memoria

Este documento describe la estructura de una aplicación web desarrollada con Laravel para gestionar una plataforma de streaming. Se incluyen modelos, migraciones, seeders y controladores para actores, directores y series. Las vistas permiten listar, crear, editar y eliminar estos recursos. Se implementa autenticación y validaciones de datos.

Cargado por

Dámaris Núñez
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
47 vistas11 páginas

Memoria

Este documento describe la estructura de una aplicación web desarrollada con Laravel para gestionar una plataforma de streaming. Se incluyen modelos, migraciones, seeders y controladores para actores, directores y series. Las vistas permiten listar, crear, editar y eliminar estos recursos. Se implementa autenticación y validaciones de datos.

Cargado por

Dámaris Núñez
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 11

UNIVERSIDAD INTERNACIONAL DE VALENCIA

04MASW Desarrollo de aplicaciones Web I Lado del


Servidor (back-end)

Integrantes
Dámaris Daniela Núñez Pérez
Nicole Gabriela Moreno Reina

Docente
Rubén Martínez Albiñana

Agosto, 2022
Índice

INTRODUCCIÓN.......................................................................................................................4
ESTRUCTURA DEL PROYECTO ..........................................................................................4
Actor y Director .......................................................................................................................4
Migración ................................................................................................................................4

Seeder.....................................................................................................................................4

Modelo ....................................................................................................................................4

Controlador .............................................................................................................................4

Vistas.......................................................................................................................................5

Listar actores ......................................................................................................................5


Creación y edición de actores..........................................................................................6
Eliminar actores .................................................................................................................6
Serie............................................................................................................................................7
Migración ................................................................................................................................7

Seeder.....................................................................................................................................7

Modelo ....................................................................................................................................7

Controlador .............................................................................................................................7

Vistas.......................................................................................................................................9

Listar series ........................................................................................................................9


Creación y edición de series ............................................................................................9
Eliminar series....................................................................................................................9
Autenticación .........................................................................................................................10
CONCLUSIONES....................................................................................................................11
RECOMENDACIONES ..........................................................................................................11
Índice de figuras

Figura 1 Estructura de la migración de actor ........................................................................4


Figura 2 Función Delete del Controlador ActorController ...................................................5
Figura 3 Función para validar que los campos tengan el formato correcto......................5
Figura 4 Listar actores .............................................................................................................5
Figura 5 Crear actores .............................................................................................................6
Figura 6 Estructura de la migración de series ......................................................................7
Figura 7 Código para añadir directores para una serie específica ....................................7
Figura 8 Código para eliminar directores para una serie específica .................................8
Figura 9 Lista de series ...........................................................................................................9
Figura 10 Código para eliminar series ...................................................................................9
Figura 11 Código donde debemos cambiar la ruta “HOME” ..............................................9
Figura 12 Código donde controlamos el acceso en los controllers ...................................9
Figura 13 Código donde controlamos el acceso en las vistas ...........................................9
INTRODUCCIÓN

El presente trabajo, al igual que en la Actividad 1, es una plataforma para la gestión


de plataformas de streaming por donde se transmiten series, además, se pueden
gestionar actores, directores, idiomas tanto para audios y subtítulos disponibles en una
serie. Debe ser realizado con el Framework Laravel.

ESTRUCTURA DEL PROYECTO

Para estructurar el proyecto se utiliza el framework Laravel, el cual utiliza el patrón


MVC (Modelo – Vista - Controlador).

Actor y Director

Migración

Actor y director son idénticas, ya que, se encuentran conformadas por los mismos
campos, por lo tanto, se explicará Actor. Se han creado dos migraciones actor y director
con los siguientes datos, además de que se especifica la columna “softDeletes” y se
ejecutó el comando “php artisan migrate”, de esta manera, la tabla ha sido creada dentro
de la base de datos
Figura 1
Estructura de la migración de actor

Seeder

Para crear el seeder se ejecuta en la terminal el comando “php artisan make:seeder


ActorsSeeder”, y creamos un arreglos con los datos que deseamos ingresar.
Modelo

Para crear el modelo se ejecuta en la terminal el comando “php artisan make:model


Actor”.
Controlador

Para crear el controlador se ejecuta en la terminal el comando “php artisan


make:controller ActorController”, el cual, permite acceder al modelo y devolver
información a las vistas. Se crea una función “index”, la cual mostrará todos los actores
con paginación y permitirá buscar y recuperar todos los registros relacionados con la
palabra que se ingrese en el buscador. La fecha debe ser mostrada en formato
dd/mm/yyyy.
Se crean las funciones “create” y “store”, en donde se valida que el actor no exista, y
se crea el registro, caso contrario, no permitirá ser creado ya que existe.
Se crean las funciones “edit” y “update”, en donde se valida que el actor exista, y se
modifica el registro, caso contrario, no permitirá ser modificado ya que no existe.
Se crea la función ”delete”, en donde se valida que el actor exista y que no se
encuentre en ninguna serie, siendo así, permitirá eliminarlo, caso contrario, mostrará un
mensaje de error, ya que si es parte de una serie, no debe ser borrado. Además, se está
haciendo uso de los softDeletes, así que en la base de datos aparecerá con la fecha y
hora de borrado, pero no desaparecerá definitivamente.
Figura 2
Función Delete del Controlador ActorController

Para validar todos los campos se creó la función validateActor() que se encargar de
verificar que el nombre, el apellido, la fecha y la nacionalidad se encuentre en formato
correcto y rangos de valores adecuados, si es así, devuelve verdadero, caso contrario,
falso.
Figura 3
Función para validar que los campos tengan el formato correcto

Vistas

Listar actores

Se realiza una lista de todos los actores y se muestra el id, nombre, apellido, fecha
de nacimiento y nacionalidad, juntamente con los botones editar y eliminar. La fecha de
muestra en el formato español dd/mm/yyyy.
Figura 4
Listar actores
Creación y edición de actores

Para ingresar el campo llamado fecha de nacimiento, se despliega un calendario, con


fecha límite actual, ya que, no se pueden registrar actores con fechas de nacimiento
futuras a la actual ya que eso significaría que todavía no han nacido, además, no se
pueden insertar fechas con formatos no válidos.
Se valida que todos campos se encuentren llenos y si es así, entonces se inserta un
nuevo registro.
Figura 5
Crear actores

Para editar actores, al igual que para crear, se despliega un calendario, que tiene la
misma función descrita anteriormente. Además, se valida que todos campos se
encuentren llenos y con formato adecuado y si es así, entonces se edita el registro.
Eliminar actores

Para eliminar actores, basta con presionar el botón Borrar, y deberá validad si el actor
no se encuentra participando en alguna serie, si es así, entonces lo elimina, caso
contrario, mostrará un mensaje de error que sugiere eliminar al actor de la serie.
Serie

Migración

Se ha creado una migración con siguientes datos, además de que se especifica la


columna “softDeletes” y las claves foráneas. Se ejecutó el comando “php artisan
migrate”, de esta manera, la tabla ha sido creada dentro de la base de datos.
Figura 6
Estructura de la migración de series

Seeder

Para crear el seeder se ejecuta en la terminal el comando “php artisan make:seeder


SeriesSeeder”, y creamos un arreglos con los datos que deseamos ingresar.
Modelo

Para crear el modelo se ejecuta en la terminal el comando “php artisan make:model


Serie”.
Controlador

Para crear el controlador se ejecuta en la terminal el comando “php artisan


make:controller SerieController. Se crea una función “index”, la cual mostrará todas las
series con paginación y permitirá buscar y recuperar todos los registros relacionados
con la palabra que se ingrese en el buscador.
Se crean las funciones “create” y “store”, en donde se valida que la serie no exista y
se crea la serie con sus respectivos actores, directores, audios o subtítulos.
Se crean las funciones “edit” y “update”, en donde se va a modificar la serie y sus
datos, con el id de la serie, se procederá a editar los directores que participan en dicha
serie, para lo cual hay que considerar que en ocasiones se pueden dejar de seleccionar
algunos que anteriormente si estaban, por ejemplo, al momento de crear la serie se
seleccionaron tres directores, pero se notó que faltaba uno, así que la modificar se
selecciona uno más, por lo tanto, se debería añadir ese director para esta serie.
Figura 7
Código para añadir directores para una serie específica

También se puede dar el caso, que al momento de crear la serie se seleccionaron


tres directores, pero se notó que no era uno de ellos, entonces al momento de modificar
se dejó de lado ese director y solo se seleccionaron dos, por lo tanto, se debería eliminar
a ese director que esta serie. Se realiza el mismo procedimiento para actores, audios y
subtítulos disponibles.
Figura 7
Código para eliminar directores para una serie específica

Se crea la función ”delete”, en donde se valida que la serie exista y se procede a


eliminar, haciendo uso de los “softDeletes”.
Para validar todos los campos se creó la función validateSerie() que se encargar de
verificar que el título se encuentre en formato correcto y rangos de valores adecuados,
si es así, devuelve verdadero, caso contrario, falso.
Vistas

Listar series

Se muestra el id, el título, la plataforma a la que pertenece cada serie, además se


crea una lista con todos los directores que pertenecen a dicha serie, así, también los
actores, audios y subtítulos disponibles.
Figura 8
Lista de series

Creación y edición de series

Se ingresa el título, la plataforma mediante un combo box, los directores, actores,


audios y subtítulos disponibles mediante un combo box de selecciona múltiple. Para
seleccionar varias opciones, se mantiene presionada la tecla Control y con clic derecho
de realiza la elección.
Para modificar una serie, es utiliza el mismo formulario de “crear”, pero estarán llenos
con la información de dicha serie.
Eliminar series

Para eliminar una nueva serie, se deberá presionar el botón “Borrar” que se
encuentra en el formulario listar.
Figura 9
Código para eliminar series
Autenticación

Para crear los componentes para la autenticación, es necesario correr los siguientes
comandos en la terminal en el orden indicado:
1. composer require laravel/ui "^1.0" --dev
2. php artisan ui vue --auth
3. npm install
4. npm run dev
El siguiente paso es definir la ruta “HOME”, en el archivo “RouteServiceProvider” al cual
se redirigirá en el momento del login y logout.
Figura 13
Código donde debemos cambiar la ruta “HOME”.

Se debe agregar la condición en las funciones dentro de los controllers o dentro del
Blade, controlando el acceso público o de usuarios logeados.
Figura 14
Código donde controlamos el acceso en los controllers.
Figura 15
Código donde controlamos el acceso en las vistas.

CONCLUSIONES

• Es necesario crear los componentes del proyecto para que sean reconocidos al
momento de correr el proyecto, de otra manera es necesario correr el comando
“composer dump-autoload” en la terminal para que actualice los componentes
creados.
• Es necesario utilizar los comandos “npm install” y “npm run dev” después de
correr los comandos necesarios para la autenticación, ya que de esta manera
todas las librerías necesarias serán instaladas y actualizadas de manera
correcta.
• Es necesario controlar la eliminación de registros que sean utilizados por otras
tablas, para evitar errores dentro del proyecto, mantener consistencia dentro de
lavase de datos y mejorar la experiencia del usuario.

RECOMENDACIONES

• Es recomendable controlar la autenticación dentro de los métodos que redirigen


a las diferentes vistas, para evitar el acceso indeseado desde la url, además de
controlar la visualización de ciertos componentes de tal forma que se mejore la
experiencia del usuario.
• Se recomienda el uso del soft-delete para no perder información que puede ser
necesaria en futuras ocasiones dentro del proyecto, además de tener un tipo de
auditoría que nos permite ver desde la base de datos en qué momento fue
eliminado el registro.
• Es recomendable utilizar “csrf” para ocultar información delicada y evitar posibles
hackeos y darles seguridad a los datos del usuario dentro del proyecto.

También podría gustarte