控制器中的Laravel路由到非索引方法


Laravel Routing to non index method in controller

我正在尝试创建一个路由:

Route::get('/apply/submit', 'ApplyController@submit');

但我一直得到标准的拉拉维错误页面。

我的ApplyController:

class ApplyController extends BaseController {
    public function index() {
        return View::make('apply.apply', array('metaTitle' => 'China Aupair | Internships | Apply Online'));
    }
    public function submit() {
        return 'yay!';
    }
}

我不明白,因为Route::get('/apply', 'ApplyController@index');可以正常工作。

我做错了什么?

我认为问题在于访问此页面的方法。您可能尝试发送表单(使用POST方法),并使用get作为路由。你应该做的是改变:

Route::get('/apply/submit', 'ApplyController@submit');

进入

Route::post('/apply/submit', 'ApplyController@submit');

因为您可能发送了一个表单,而不是使用http://localhost/yourproject/apply/submit 在浏览器中手动运行此路由