parâmetro url - laravel

Nov 04 2020

nossos usuários acessam nosso site com um parâmetro único na url. iehttp://example.com/hire-agreement?u=unique_param

Eu configurei uma rota para uma vista -

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

Eu tenho 2 perguntas.

  1. Preciso adicionar mais alguma coisa à rota para permitir que o parâmetro seja lido na visualização?
  2. Como leio o valor deste parâmetro na Visualização? Posso usar $_GET["name"])?

obrigado Craig.

Respostas

2 zahidhasanemon Nov 04 2020 at 17:19

você não precisa de mais nada na seção url. e para usar ou obter o parâmetro url, use o auxiliar laravel request () .

$value = request('key');

em vista, você pode imprimir uma chave como

{{ request('name') }}

exemplo completo para você usando o auxiliar de solicitação

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
});

e então você pode usar a variável como

{{ $name }}

se você não quiser usar uma variável, você pode usar diretamente solicitar o auxiliar na visualização

{{ request('name') }}

você também pode usar a classe Request.

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

no entanto, eu sugiro que você use um controlador. não use o fechamento no arquivo de rota. você não pode armazená-los em cache quando necessário.

2 KamleshPaul Nov 04 2020 at 17:24

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

no laravel você pode acessar ambos poste getpode ser acessado por Requestinstância de classe ou request()auxiliar para que você possa fazer

com pedido de ajuda ()

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

com Solicitação de Classe ou

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

aqui você pode

1 AxissXs Nov 04 2020 at 17:57

É melhor você passar a solicitação para um controlador e tratá-la lá, é mais fácil e mais limpo dessa forma. Entretanto, se você quiser ir direto da rota para a visualização, é melhor usar o método abaixo. coloque isso em seu arquivo de rota

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

na visão você pode acessar o parâmetro como este

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

agora, se o usuário solicitar "/ contrato de locação / 1234", seu $ param na visualização conterá 1234. Além disso, se você quiser acessar obter parâmetros na url, poderá fazê-lo assim

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