尝试使用Laravel发送电子邮件,但一直收到405错误,并显示whoops页面:
* @param array $others
* @return void
*
* @throws \Symfony\Component\HttpKernel\Exception\MethodNotAllowedHttpException
*/
protected function methodNotAllowed(array $others)
{
throw new MethodNotAllowedHttpException($others);
}
代码是:
{{ Form::open(array('url' => 'admin/newemail')) }}
// form items
{{ Form::close() }}
路线是:
Route::get('admin/newemail', function()
{
$email = 'email@hotmail.com';
$data = array('s' => Input::get('email-heading'));
Mail::send('emails.wereback', $data, function($message) use ($email){
// $message details
});
});
但是,如果我直接转到url admin / newemail,它可以正常工作。
任何帮助?
答案 0 :(得分:0)
默认情况下,Form
助手会生成一个使用POST方法的html表单。如果需要使用其他方法,可以指定方法:
{{ Form::open(array('url' => 'admin/newemail', 'method' => 'GET')) }}
或者您也可以更改路线以匹配POST请求:
Route::post('admin/newemail', function()
{
// [...]
});