I just started learning laravel. I am using laravel 5.2.29 I get an error when running the code:
Oops, it looks like something went wrong. BadMethodCallException in line Controller.php 107: The [validate] method does not exist.
The error line is displayed here:
in Controller.php line 107 2.at Controller->__call('validate', array(object(Request), array('action' => 'required', 'name' => 'required'))) in NiceActionController.php line 31 3.at NiceActionController->validate(object(Request), array('action' => 'required', 'name' => 'required')) in NiceActionController.php line 31 4.at NiceActionController->postNiceAction(object(Request)) 5.at call_user_func_array(array(object(NiceActionController), 'postNiceAction'), array(object(Request))) in Controller.php line 80 6.at Controller->callAction('postNiceAction', array(object(Request))) in ControllerDispatcher.php line 146 7.at ControllerDispatcher->call(object(NiceActionController), object(Route), 'postNiceAction') in ControllerDispatcher.php line 94 8.at ControllerDispatcher->Illuminate\Routing\{closure}(object(Request)) 9.at call_user_func(object(Closure), object(Request)) in Pipeline.php line 52 10.at Pipeline->Illuminate\Routing\{closure}(object(Request)) 11.at call_user_func(object(Closure), object(Request)) in Pipeline.php line 103 12.at Pipeline->then(object(Closure)) in ControllerDispatcher.php line 96 13.at ControllerDispatcher->callWithinStack(object(NiceActionController), object(Route), object(Request), 'postNiceAction') in ControllerDispatcher.php line 54 14.at ControllerDispatcher->dispatch(object(Route), object(Request), 'App\Http\Controllers\NiceActionController', 'postNiceAction') in Route.php line 174 15.at Route->runController(object(Request)) in Route.php line 140 16.at Route->run(object(Request)) in Router.php line 724 17.at Router->Illuminate\Routing\{closure}(object(Request)) 18.at call_user_func(object(Closure), object(Request)) in Pipeline.php line 52 19.at Pipeline->Illuminate\Routing\{closure}(object(Request)) in VerifyCsrfToken.php line 64 20.at VerifyCsrfToken->handle(object(Request), object(Closure)) 21.at call_user_func_array(array(object(VerifyCsrfToken), 'handle'), array(object(Request), object(Closure))) in Pipeline.php line 124 22.at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) 23.at call_user_func(object(Closure), object(Request)) in Pipeline.php line 32 24.at Pipeline->Illuminate\Routing\{closure}(object(Request)) in ShareErrorsFromSession.php line 49 25.at ShareErrorsFromSession->handle(object(Request), object(Closure)) 26.at call_user_func_array(array(object(ShareErrorsFromSession), 'handle'), array(object(Request), object(Closure))) in Pipeline.php line 124 27.at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) 28.at call_user_func(object(Closure), object(Request)) in Pipeline.php line 32 29.at Pipeline->Illuminate\Routing\{closure}(object(Request)) in StartSession.php line 62 30.at StartSession->handle(object(Request), object(Closure)) 31.at call_user_func_array(array(object(StartSession), 'handle'), array(object(Request), object(Closure))) in Pipeline.php line 124 32.at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) 33.at call_user_func(object(Closure), object(Request)) in Pipeline.php line 32 34.at Pipeline->Illuminate\Routing\{closure}(object(Request)) in AddQueuedCookiesToResponse.php line 37 35.at AddQueuedCookiesToResponse->handle(object(Request), object(Closure)) 36.at call_user_func_array(array(object(AddQueuedCookiesToResponse), 'handle'), array(object(Request), object(Closure))) in Pipeline.php line 124 37.at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) 38.at call_user_func(object(Closure), object(Request)) in Pipeline.php line 32 39.at Pipeline->Illuminate\Routing\{closure}(object(Request)) in EncryptCookies.php line 59 40.at EncryptCookies->handle(object(Request), object(Closure)) 41.at call_user_func_array(array(object(EncryptCookies), 'handle'), array(object(Request), object(Closure))) in Pipeline.php line 124 42.at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) 43.at call_user_func(object(Closure), object(Request)) in Pipeline.php line 32 44.at Pipeline->Illuminate\Routing\{closure}(object(Request)) in VerifyCsrfToken.php line 64 45.at VerifyCsrfToken->handle(object(Request), object(Closure)) 46.at call_user_func_array(array(object(VerifyCsrfToken), 'handle'), array(object(Request), object(Closure))) in Pipeline.php line 124 47.at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) 48.at call_user_func(object(Closure), object(Request)) in Pipeline.php line 32 49.at Pipeline->Illuminate\Routing\{closure}(object(Request)) in ShareErrorsFromSession.php line 49 50.at ShareErrorsFromSession->handle(object(Request), object(Closure)) 51.at call_user_func_array(array(object(ShareErrorsFromSession), 'handle'), array(object(Request), object(Closure))) in Pipeline.php line 124 52.at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) 53.at call_user_func(object(Closure), object(Request)) in Pipeline.php line 32 54.at Pipeline->Illuminate\Routing\{closure}(object(Request)) in StartSession.php line 62 55.at StartSession->handle(object(Request), object(Closure)) 56.at call_user_func_array(array(object(StartSession), 'handle'), array(object(Request), object(Closure))) in Pipeline.php line 124 57.at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) 58.at call_user_func(object(Closure), object(Request)) in Pipeline.php line 32 59.at Pipeline->Illuminate\Routing\{closure}(object(Request)) in AddQueuedCookiesToResponse.php line 37 60.at AddQueuedCookiesToResponse->handle(object(Request), object(Closure)) 61.at call_user_func_array(array(object(AddQueuedCookiesToResponse), 'handle'), array(object(Request), object(Closure))) in Pipeline.php line 124 62.at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) 63.at call_user_func(object(Closure), object(Request)) in Pipeline.php line 32 64.at Pipeline->Illuminate\Routing\{closure}(object(Request)) in EncryptCookies.php line 59 65.at EncryptCookies->handle(object(Request), object(Closure)) 66.at call_user_func_array(array(object(EncryptCookies), 'handle'), array(object(Request), object(Closure))) in Pipeline.php line 124 67.at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) 68.at call_user_func(object(Closure), object(Request)) in Pipeline.php line 32 69.at Pipeline->Illuminate\Routing\{closure}(object(Request)) 70.at call_user_func(object(Closure), object(Request)) in Pipeline.php line 103 71.at Pipeline->then(object(Closure)) in Router.php line 726 72.at Router->runRouteWithinStack(object(Route), object(Request)) in Router.php line 699 73.at Router->dispatchToRoute(object(Request)) in Router.php line 675 74.at Router->dispatch(object(Request)) in Kernel.php line 246 75.at Kernel->Illuminate\Foundation\Http\{closure}(object(Request)) 76.at call_user_func(object(Closure), object(Request)) in Pipeline.php line 52 77.at Pipeline->Illuminate\Routing\{closure}(object(Request)) in CheckForMaintenanceMode.php line 44 78.at CheckForMaintenanceMode->handle(object(Request), object(Closure)) 79.at call_user_func_array(array(object(CheckForMaintenanceMode), 'handle'), array(object(Request), object(Closure))) in Pipeline.php line 124 80.at Pipeline->Illuminate\Pipeline\{closure}(object(Request)) 81.at call_user_func(object(Closure), object(Request)) in Pipeline.php line 32 82.at Pipeline->Illuminate\Routing\{closure}(object(Request)) 83.at call_user_func(object(Closure), object(Request)) in Pipeline.php line 103 84.at Pipeline->then(object(Closure)) in Kernel.php line 132 85.at Kernel->sendRequestThroughRouter(object(Request)) in Kernel.php line 99 86.at Kernel->handle(object(Request)) in index.php line 54
My route code:
<?php Route::group(['middleware' => ['web']], function(){ Route::get('/', function () { return view('home'); })->name('home'); Route::group(['prefix'=>'do'], function(){ Route::get('/{action}/{name?}', [ 'uses' => ' NiceActionController@getNiceAction ', 'as' => 'niceaction'
My controller code is below:
<?php namespace App\Http\Controllers; use Illuminate\Routing\Controller; use \Illuminate\Http\Request; class NiceActionController extends Controller { public function getNiceAction($action, $name=null) { return view('actions.'.$action, ['name' => $name]); } public function postNiceAction(Request $request) { $this->validate($request, [ 'action' => 'required', 'name' =>'required' ]); return view('actions.nice', ['action'=>$request['action'],'name'=>$this->transformName($request['name'])]); } private function transformName($name) { $prefix='KING'; return $prefix.strtoupper($name); } }
My base controller "controller" has the following code:
<?php namespace App\Http\Controllers; use Illuminate\Foundation\Bus\DispatchesJobs; use Illuminate\Routing\Controller as BaseController; use Illuminate\Foundation\Validation\ValidatesRequests; use Illuminate\Foundation\Auth\Access\AuthorizesRequests; use Illuminate\Foundation\Auth\Access\AuthorizesResources; class Controller extends BaseController { use AuthorizesRequests, AuthorizesResources, DispatchesJobs, ValidatesRequests; }
Am I missing something ????