我正在嘗試一些非?;镜牟僮?。我已經(jīng)習(xí)慣了CI,現(xiàn)在正在學(xué)習(xí)Laravel 4,他們的文檔并不容易!無論如何,我試圖創(chuàng)建一個登錄表單,并通過在下一個表單中打印數(shù)據(jù)來確保成功發(fā)布了數(shù)據(jù)。我收到此異常:Symfony \組件\ HttpKernel \異常\ MethodNotAllowedHttpException和我的MemberController.php: public function index() { if (Session::has('userToken')) { /*Retrieve data of user from DB using token & Load view*/ return View::make('members/profile'); }else{ return View::make('members/login'); } } public function validateCredentials() { if(Input::post()) { $email = Input::post('email'); $password = Input::post('password'); return "Email: " . $email . " and Password: " . $password; }else{ return View::make('members/login'); } }路線有:Route::get('/', function(){ return View::make('hello');});Route::get('/members', 'MemberController@index');Route::get('/validate', 'MemberController@validateCredentials');最后,我的視圖login.php具有以下表單方向:<?php echo Form::open(array('action' => 'MemberController@validateCredentials')); ?>任何幫助將不勝感激。
3 回答

蕪湖不蕪
TA貢獻1796條經(jīng)驗 獲得超7個贊
我懷疑問題出在您的路線定義上。
您將路由定義為GET請求,但是表單可能正在發(fā)送POST請求。更改您的路線定義。
Route::post('/validate', 'MemberController@validateCredentials');
通常,更好的做法是使用命名路由(如果控制器方法/類發(fā)生更改,則有助于擴展)。
Route::post('/validate', array(
'as' => 'validate',
'uses' => 'MemberController@validateCredentials'
));
在表格中使用以下內(nèi)容
<?php echo Form::open(array('route' => 'validate')); ?>
- 3 回答
- 0 關(guān)注
- 707 瀏覽
添加回答
舉報
0/150
提交
取消