parametr url - laravel

Nov 04 2020

nasi użytkownicy uzyskują dostęp do naszej witryny za pomocą unikalnego parametru w adresie URL. to znaczyhttp://example.com/hire-agreement?u=unique_param

Ustawiłem trasę do widoku -

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

Mam 2 pytania.

  1. Czy muszę dodawać cokolwiek innego do trasy, aby umożliwić odczytanie parametru w widoku?
  2. Jak odczytać wartość tego parametru w widoku? Czy mogę użyć $_GET["name"])?

dzięki Craig.

Odpowiedzi

2 zahidhasanemon Nov 04 2020 at 17:19

nie potrzebujesz nic więcej w sekcji adresu URL. i aby użyć lub pobrać parametr url użyj helpera laravel request () .

$value = request('key');

w widoku możesz wydrukować klucz, taki jak

{{ request('name') }}

pełny przykład dla Ciebie przy użyciu pomocnika żądań

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

a następnie w widoku możesz użyć zmiennej jako

{{ $name }}

jeśli nie chcesz używać zmiennej, możesz użyć bezpośrednio pomocnika żądania w widoku

{{ request('name') }}

możesz też użyć klasy Request.

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

jednak sugerowałbym użycie kontrolera. nie używaj domknięcia w pliku trasy. Nie możesz ich buforować, gdy są potrzebne.

2 KamleshPaul Nov 04 2020 at 17:24

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

w laravel możesz uzyskać dostęp do obu posti getmożesz uzyskać dostęp za pomocą Requestinstancji klasy lub request()pomocnika, więc możesz to zrobić

z prośbą o pomoc ()

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

z wnioskiem klasowym lub

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

tutaj możesz

1 AxissXs Nov 04 2020 at 17:57

Lepiej przekaż żądanie do kontrolera i tam zajmij się nim, jest to łatwiejsze i czystsze w ten sposób. Jednak jeśli chcesz przejść prosto z trasy do widoku, lepiej użyj poniższej metody. umieść to w swoim pliku trasy

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

w widoku możesz uzyskać dostęp do tego parametru

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

teraz, jeśli użytkownik zażąda "/ umowa najmu / 1234", twój $ param w widoku będzie zawierał 1234. Również jeśli chcesz uzyskać dostęp do parametrów w adresie URL, możesz to zrobić w ten sposób

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