Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Laravel 5.2 throws NotFoundHttpException in Handler.php line 103

This happens when I add a basic route (foo). The rest of the routes work as expected. This generates a NotFoundHttpException and a ModelNotFoundException.

app/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');
});

app/resources/views/foo.blade.php:

<p>foo</p>
like image 638
Doug Avatar asked Feb 15 '26 02:02

Doug


1 Answers

When declaring your routes file, try to declare WosController@show as the last route. Like this:

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 was probably making a mistake with your show route because it thinks that /foois an argument of {workorder} since it has no way to differ them. So, when declaring routes, try to put fixed routes first and routes with arguments in the end.

like image 159
Laerte Avatar answered Feb 17 '26 15:02

Laerte



Donate For Us

If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!