parámetro url - laravel

Nov 04 2020

nuestros usuarios acceden a nuestro sitio con un parámetro único en la URL. es decirhttp://example.com/hire-agreement?u=unique_param

He configurado una ruta a una vista -

Route::get('/hire-agreement', function () {
    return view('hire-agreement');
});

Tengo 2 preguntas.

  1. ¿Necesito agregar algo más a la ruta para permitir que el parámetro se lea en la vista?
  2. ¿Cómo leo este valor de parámetro en la Vista? ¿Puedo usar $_GET["name"])?

gracias Craig.

Respuestas

2 zahidhasanemon Nov 04 2020 at 17:19

no necesitas nada más en la sección de URL. y para usar u obtener el parámetro url use laravel request () helper.

$value = request('key');

a la vista puede imprimir una clave como

{{ request('name') }}

ejemplo completo para ti usando el asistente de solicitud

Route::get('/hire-agreement', function () {
    $name = request('name'); //put the key in a variable
    return view('hire-agreement', compact('name')); //send the variable to the view
});

y luego, a la vista, puede usar la variable como

{{ $name }}

si no desea usar una variable, puede usar la solicitud de ayuda directamente a la vista

{{ request('name') }}

también puedes usar la clase Request.

Route::get('/hire-agreement', function (Request $request) {
    $name = $request->name;
    return view('hire-agreement', compact('name'));
});

sin embargo, le sugiero que utilice un controlador. no use el cierre en el archivo de ruta. No puede almacenarlos en caché cuando sea necesario.

2 KamleshPaul Nov 04 2020 at 17:24

http://example.com/hire-agreement?u=unique_param

en laravel puede acceder a ambos posty getse puede acceder por Requestinstancia de clase o request()ayudante para que pueda hacerlo

con solicitud de ayuda ()

Route::get('/hire-agreement', function () {
    dd(request('u')) //  this getting from url ?u=unique_param this u param
    return view('hire-agreement');
});

con solicitud de clase o

Route::get('/hire-agreement', function (Request $request) { dd($request->u)) //  this getting from url ?u=unique_param this u param
    return view('hire-agreement');
});

Aquí puedes

1 AxissXs Nov 04 2020 at 17:57

Será mejor que pase la solicitud a un controlador y la maneje allí, es más fácil y más limpio de esa manera. Sin embargo, si desea ir directamente de la ruta a la vista, es mejor que use el método siguiente. poner esto en su archivo de ruta

Route::get('/hire-agreement/{param}', function ($param) { return view('hire-agreement')->with($param);
});

en la vista puedes acceder al parámetro así

<p>{{$param}}</p>

ahora, si el usuario solicita "/ Hire-Agreement / 1234", su $ param en la vista contendrá 1234. Además, si desea acceder a obtener parámetros en la URL, puede hacerlo así.

{{Request::input('q')}}