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>
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 problably making a mistake with your show route because it thinks that /foo
is 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.
Hope it helps you!!