簡體   English   中英

Laravel 5.1有問號的路線

[英]Laravel 5.1 Routes that have question mark

我正在嘗試在Laravel 5.1中創建一個路徑,它將根據“關鍵字”搜索記錄。 我喜歡加入? 在我的網址中以獲得更多可讀性。 問題是,當我包括? 並用郵遞員測試路線它什么都不返回。 但是當我刪除? 並用/替換它並再次使用郵遞員測試它將返回關鍵字的值。 Laravel路線是否支持?

//Routes.php
Route::get('/search?keyword={keyword}', [
    'as' => 'getAllSearchPublications', 
    'uses' => 'PublicationController@index'
]);

//Publication Controller
public function index($keyword)
{
    return $keyword;
}

我一直在網上搜索幾個小時,我已經閱讀了Laravel文檔,但我找不到答案。 謝謝。

我相信你在談論查詢字符串。 要接受查詢參數,請不要將其作為參數傳遞。 因此,例如,您的路線看起來應該更加清晰:

Route::get('/search', [
    'as' => 'getAllSearchPublications', 
    'uses' => 'PublicationController@index'
]);

注意:我刪除了?keyword={keyword}

然后,在您的控制器方法中,您可以通過調用Request對象上的query方法來獲取查詢參數。

public function index(Request $request)
{
    return $request->query('keyword');
}

如果您還沒有,則需要導入use Illuminate\\Http\\Request; 使用Request類。

使用

$resquest

控制器操作中的參數以獲取查詢參數。 而不是使用"?" 在你的路線創建。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM