En este tutorial, comenzaremos a ver cómo podemos tomar datos variables y pasarlos a nuestras vistas para que se representen en el navegador. Este enfoque se adhiere a la arquitectura Model View Controller. En esta serie de tutoriales más reciente sobre Laravel, aún no hemos hablado de los modelos que normalmente tratan con la recuperación de datos, pero hemos cubierto los conceptos básicos de enrutamiento y vistas. Este es un conocimiento suficiente para que podamos comenzar ahora el proceso de agregar datos dinámicos a nuestro enrutamiento y vistas, y observar cómo esto resulta en la salida al navegador.
El objetivo: enumerar algunos videojuegos
En este momento, tenemos suficiente conocimiento de los conceptos básicos que hemos aprendido hasta ahora para configurar una ruta y cargar una vista. ¿Qué tal si configuramos una ruta para que cuando la visitemos /games
veamos una lista de juegos? Aquí hay una ruta y un archivo de vista que lo permitirá. Empezaremos haciendo esto de forma estática.
/routes/web.php
/resources/views/games.blade.php
http://54.dev/games
Haz que los datos sean dinámicos
Justo arriba, tenemos una página web básica para mostrar algunos videojuegos al visitar la /games
ruta. Ahora eliminemos los valores codificados de forma rígida del archivo de vista y, en su lugar, coloquemos los nombres de los juegos en el archivo de rutas. Aquí hay una versión modificada de lo que teníamos arriba. Los datos ahora serán dinámicos.
/routes/web.php
/resources/views/games.blade.php
http://54.dev/games
Como podemos ver, los datos ahora son dinámicos. Se pasa como una matriz desde el archivo de rutas a la vista para renderizar. Es importante tener en cuenta que es el segundo argumento pasado a la view()
función que contiene los datos dinámicos. Ese segundo argumento debe ser una matriz. Ahora, las claves de esa matriz se convierten en los nombres de las variables en la vista . Entonces, en nuestro ejemplo aquí, ese segundo argumento es una matriz que solo tiene una clave que es games
. Esegames
La clave en sí contiene una serie de los tres juegos que deseamos pasar a la vista. Luego, en la vista, usamos una construcción foreach estándar de PHP para recorrer cada juego y generar el resultado. ¿Necesitas ver pruebas de que esto es dinámico? Sigamos adelante y actualicemos la matriz de datos que estamos pasando y luego observemos el resultado en el navegador. (El archivo de vista no se modifica en este momento).
/routes/web.php
http://54.dev/games
La variedad de muchos formatos
Esta matriz que se pasa como segundo argumento puede tener muchas formas diferentes. Hasta ahora hemos hecho la versión en línea por así decirlo. Aquí es donde llenamos la matriz en su lugar. Esto funciona, pero puede volverse un poco engorroso a medida que crece el conjunto de datos que desea pasar. Veamos algunas formas diferentes de hacer lo mismo, por así decirlo. Los siguientes fragmentos hacen exactamente lo mismo.
En línea
Configurar una matriz de datos
El método with ()
La función compact ()
Pasar varias matrices de datos a la vez
Una buena forma de hacer las cosas es simplemente asumir que su declaración de retorno en su ruta específica se verá así:
Dado que la variable $ data es una matriz, puede contener tantas claves como necesite para almacenar datos. Así que consideremos que no solo queremos enumerar los juegos , sino también los editores de esos juegos. ¿Cómo podríamos hacer eso? ¡Veamos!
/routes/web.php
/resources/views/games.blade.php
http://54.dev/games
¡Fantástico! Quizás también quieras incluir el año en que se lanzó el juego. Es muy fácil escalar esto, y todo lo que tienes es la misma$data
variable que el segundo argumento deview()
.
/routes/web.php
/resources/views/games.blade.php
http://54.dev/games
Por supuesto, puede utilizar el método que mejor se adapte a sus necesidades. Todos aprendemos de manera diferente, y seguramente a algunos de nosotros nos gustará un enfoque y otros adoptarán un enfoque diferente. Todo depende de lo que tenga más sentido en su propia mente. Siempre trata de ponértelo fácil.
Hacer uso de la hoja
En los ejemplos hasta ahora, usamos PHP estándar para presentar los datos al navegador en los archivos de vista. ¿Y si te dijera que hay una forma mucho más fácil de hacer esto? Bueno, te lo digo, la hay y se llama Blade. Veamos cómo podemos hacer uso de la hoja para permitir una sintaxis más fácil de escribir.
Tome este código que genera una lista desordenada y hágalo un poco más fácil de escribir y razonar.
Si tomamos la tabla que renderizamos anteriormente, también podemos actualizarla para usar blade.
Cómo pasar datos a vistas en resumen de Laravel
Cuando comenzamos, simplemente estábamos trabajando en la configuración de una ruta y luego renderizando una vista. En este tutorial, dimos un paso más y analizamos cómo puede pasar datos dinámicos a sus vistas. En nuestro archivo de rutas, vimos que usamos la función view (). Su primer argumento es una cadena que especifica qué archivo de vista cargar. El segundo argumento de view () es una matriz que contiene datos dinámicos que podemos pasar al archivo de vista. Analizamos de cerca cómo usar esta matriz, así como cómo acceder a los datos en nuestros archivos de vista utilizando PHP nativo y el motor de plantillas Blade de Laravel.
0 Comentarios