Saltar al contenido

Nombre de la ruta anterior en Laravel 5.1-5.8

Solución:

Aquí lo que me funciona. Encuentro esta respuesta y esta pregunta y la modifico para que funcione en mi caso: https://stackoverflow.com/a/36476224/2807381

@if(app('router')->getRoutes()->match(app('request')->create(URL::previous()))->getName() == 'public.contact')
    Some text
@endif

Actualización para la versión 5.8 por Robert

app('router')->getRoutes()->match(app('request')->create(url()->previous()))->getName()

No puede obtener el nombre de la ruta de la página anterior, por lo que sus opciones son:

  1. Verifique la URL anterior en lugar de un nombre de ruta.

  2. Utilice sesiones. Primero, guarde el nombre de la ruta:

    session()->flash('previous-route', Route::current()->getName());
    

Luego verifique si la sesión tiene previous-route:

@if (session()->has(`previous-route`) && session(`previous-route`) == 'contacts')
    Display something
@endif
  1. Usar GET parámetros para pasar el nombre de la ruta.

Si yo fuera usted, usaría sesiones o revisaría la URL anterior.

Simplemente puedes hacer esto para lograrlo. Espero que ayude

En controlador:

$url = url()->previous();
$route = app('router')->getRoutes($url)->match(app('request')->create($url))->getName();

if($route == 'RouteName') {
    //Do required things
 }

En archivo de hoja

@php
 $url = url()->previous();
 $route = app('router')->getRoutes($url)->match(app('request')->create($url))->getName();
@endphp

@if($route == 'RouteName')
   //Do one task
@else
  // Do another task
@endif
¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *