Handler.php第103行中的Laravel 5.2 NotFoundHttpException

时间:2016-07-07 17:46:16

标签: php laravel laravel-5

当我添加基本路线(foo)时会发生这种情况。其余路线按预期工作。这会生成NotFoundHttpException和ModelNotFoundException。

应用程序/ HTTP / routes.php文件:

Route::auth();

Route::get('/home', 'HomeController@index');

Route::get('/index','WosController@index');
Route::get('/create','WosController@create');
Route::get('/{workorder}','WosController@show');
Route::post('/create','WosController@store');

Route::get('/', function () {
    return view('welcome');
});

Route::get('/foo', function () {
    return view('foo');
});

应用程序/资源/视图/ foo.blade.php:

<p>foo</p>

1 个答案:

答案 0 :(得分:10)

在声明路线文件时,尝试将WosController @ show声明为最后一条路线。像这样:

Route::auth();

Route::get('/home', 'HomeController@index');

Route::get('/index','WosController@index');
Route::get('/create','WosController@create');
Route::post('/create','WosController@store');

Route::get('/', function () {
    return view('welcome');
});

Route::get('/foo', function () {
    return view('foo');
});

Route::get('/{workorder}','WosController@show');

Laravel可能会错误地使用你的节目路线,因为它认为/foo{workorder}的一个参数,因为它无法区分它们。因此,在声明路由时,首先尝试使用固定路由,最后使用参数路由。

希望它可以帮到你!!