Una vez que haya instalado Laravel y su aplicación web básica esté en funcionamiento. Veamos más profundamente el marco y veamos cómo podemos trabajar con rutas.
Rutas: las rutas son en realidad las URL web que puede visitar en su aplicación web. Por ejemplo , /home, /profile, /dashboard, etc. son rutas diferentes que se pueden crear en una aplicación Laravel. Tenga en cuenta que las rutas distinguen entre mayúsculas y minúsculas, por lo que /profile es diferente de /Profile .
Creación de rutas: en Laravel, todas nuestras rutas se escribirán en el archivo route/web.php , ya que este directorio es estándar para todas nuestras rutas relacionadas con la web. Abra este archivo y creemos nuestra primera ruta con Laravel, escriba hasta el final de este archivo.
- Sintaxis: Para escribir la ruta es como se indica a continuación:
// Syntax of a route Route::request_type('/url', 'function()');
- Programa:
// Creating a new route
Route::get(
'/sayhello'
,
function
() {
return
'Hey ! Hello'
;
})
- Producción:
Desglosar el código dado anteriormente Route::get significa que esta es una ruta que esperará una solicitud GET. /sayhello es el nombre de la ruta y puede crear una ruta con cualquier nombre. Además, tenemos que especificar qué hacer cuando visitamos esa ruta en el navegador y lo hacemos en forma de una función de devolución de llamada que devuelve una string que dice ¡Hey! hola _
Devolución de página web: en lugar de solo devolver strings, devolveremos páginas web cuando alguien visite una ruta. Veamos cómo podemos hacer eso. En primer lugar, cree un archivo llamado index.blade.php en resources/views . En Laravel tenemos un motor de plantillas incorporado llamado Blade, por lo que escribimos todas nuestras páginas web en *.blade.php, no en *.html .
- Programa 1:
<!DOCTYPE html>
<html lang=
"en"
>
<body>
<h1>Hello! World.</h1>
</body>
</html>
- Programa 2: agregue el siguiente código a su web.php ahora.
// Creating a new route
Route::get(
'/viewhello'
,
function
() {
return
view(
'index'
);
});
- Producción:
El código proporcionado anteriormente hemos usado /viewhello como el nombre de la ruta y en la función de devolución de llamada hemos usado un método view() que es un método incorporado proporcionado por Laravel para servir la página web y selecciona automáticamente el archivo que coincide de la carpeta de recursos/vistas . Por ejemplo, pasar ‘índice’ servirá index.blade.php .
Rutas con controladores: Laravel nos proporciona mucha más potencia que simplemente escribir una función de devolución de llamada directa. De hecho, podemos hacer que nuestras rutas apunten a una función dentro de los controladores. Para hacerlo, primero creemos manualmente nuestro controlador y llámelo mycontroller . Simplemente vaya a app/Http/Controllers y cree un archivo llamado mycontroller.php . Escriba el siguiente código en este archivo:
- Programa 1: el código escrito a continuación es un código de controlador básico en el que solo estamos usando el espacio de nombres de los controladores para agregar la capacidad de usarlo, es como importar las bibliotecas. Agreguemos la función ahora:
<?php
namespace
App\Http\Controllers;
use
Illuminate\Http\Request;
class
mycontroller
extends
Controller {
// All the functions written here
// can be used in routes
}
- Programa 2: aquí hemos creado una función llamada index() y dentro de ella estamos usando el método de vista para servir index2.blade.php . Ahora hagamos dicho archivo en recursos/vistas y agreguemos el siguiente código:
<?php
namespace
App\Http\Controllers;
use
Illuminate\Http\Request;
class
mycontroller
extends
Controller {
public
function
index() {
return
view(
'index2'
);
}
}
- Programa 3: Hemos escrito el archivo frontend, escrito el controlador y ahora lo último es registrar la ruta.
<!DOCTYPE html>
<html lang=
"en"
>
<body>
<h1>This is index 2.</h1>
</body>
</html>
- Sintaxis: Para registrar las rutas
Route::request_type('/url', 'ControllerName@functionName');
Nota: aquí ControllerName es el nombre del controlador y functionName es el nombre de la función que se usará cuando un usuario visite esa URL. Sigamos esta sintaxis y escribamos nuestra ruta en rutas/web.php al final del archivo:
- Programa 4: Aquí puede ver que he escrito mycontroller como mi controlador e index como el nombre de la función que se adjuntará a esta url. Ahora visitemos /viewindex2 y veamos el resultado.
Route::get(
'/viewindex2'
,
'mycontroller@index'
);
- Producción: