【问题标题】:Laravel Query String vs Get Parameters?Laravel 查询字符串与获取参数?
【发布时间】:2016-05-12 07:38:21
【问题描述】:

我正在使用 Laravel 框架,我遇到了根据不同条件参数添加路由的情况。

目前,我正在使用此代码。

Route::get('/{report?}/{type?}', [
    'uses' => 'SomeController@getReport'
])->where(['report' => 'overview', 'type' => 'type1']);

www.example.com/overview/type1  // Working
www.example.com?report=overview&type=type1 // Not working (not verifying the where conditions).

我有另一个解决方案来解决这个问题。这是更好的方法吗?

if (Input::get('report') == 'overview' && Input::get('type') == 'type1') {
    Route::get('/', ['uses' => 'SomeController@getReport']);
}

【问题讨论】:

    标签: php laravel-5 routing laravel-5.2


    【解决方案1】:

    试试这个:

    if (request()->get('report') == 'overview'
       && request()->get('type') == 'type1') {
       Route::get('/', [
         'uses' => 'SomeController@getReport'
       );
    }
    

    【讨论】:

      【解决方案2】:

      试试这个。希望它会起作用。

            Route::get('/{report?}/{type?}', function()
             {
                if (Input::get('report') == 'overview'
                      && Input::get('type') == 'type1') {
                    // Run controller and method
                    $app = app();
                    $controller = $app->make('SomeController');
                    return $controller->callAction('getReport', $parameters = array());
                }
             });
      

      【讨论】:

        猜你喜欢
        • 2016-12-08
        • 1970-01-01
        • 2017-12-28
        • 2017-12-09
        • 2021-12-23
        • 1970-01-01
        • 2020-11-11
        • 2021-05-24
        • 1970-01-01
        相关资源
        最近更新 更多