Laravel 5.4内部错误:无法通过修复检索默认值

时间:2017-04-12 10:08:46

标签: laravel laravel-5.4

使用可选参数

当我在Laravel 5.4中使用可选参数时,我收到错误内部错误:无法检索默认值。 这是我的路线:

Route::group(['middleware' => ['auth','role:SUPER_ADMIN'],'prefix' => 'SWSM-Dashboard'], function () {


Route::get('/', 'HomeController@eventDashboard');

Route::group(['prefix' => '/providers'],function (){

    Route::get('create/{providerData?}','ProvidersController@create');
    Route::get('delete/{providerId?}','ProvidersController@destroy');
    Route::get('/','ProvidersController@index');


    }); 
});

这是我的控制器功能

public function create($providerData){ dd('Hello'); } 

我的中间件只是Laravel开箱即用的标准Auth,所以我很惊讶这不起作用。

1 个答案:

答案 0 :(得分:2)

我使用的是php 5.3,因此我无法使用类型提示,因此我通常不会使用它。

通过对要在控制器中使用的可选参数执行以下操作来解决问题。

  public function create($providersData = null)
  {

    dd($providersData);

  }

现在当使用.... / create /命中路径时,它会死并且转储为null但是当使用.... / create / 1命中路径时,providersData参数将被设置为1并且死掉并转储