laravel中的MethodNotAllowedHttpException

时间:2015-04-10 10:00:40

标签: php forms laravel

当我尝试检查验证器是否有效时,我将' Symfony \ Component \ HttpKernel \ Exception \ MethodNotAllowedHttpException' 作为响应。所以当我点击保存按钮后。这是我的代码:

在我的观点中' addMedia-partial.blade.php'

         {{ Form::open() }}

            <input type="text" name="videoUrl" placeholder="enter youtube video url" />
            <input type="text" name="videoTitle" placeholder="enter video title" />
            <input type="text" name="videoDescription" placeholder="enter video description" />

            <input type="submit" value="Save">

        {{ Form::close() }}

在我的routes.php中:

Route::get('/guide/dashboard/media/add/storeVideo', array('as' => 'guide-video-add','uses' => 'MediaController@getNewVideo'));
Route::post('/guide/dashboard/media/add/storeVideo', array('uses' => 'MediaController@postNewVideo'));

在我的控制器MediaController.php中:

public function postNewVideo() 
{

        $rules = array('videoUrl' => 'required', 'videoTitle' => 'required|min:5', 'videoDescription' => 'required|min:20');

        $validator = Validator::make(Input::all(), $rules);

        if ($validator->fails()) {


            //return Redirect::route('guide-media-add')->withErrors($validator);
            //gaat niet omdat dit in een andere controller is ?? 

            return Redirect::route('guide-video-add')->withErrors($validator);

        }
}

public function getNewVideo()
{
    return View::make('guide.dashboard.dashboard')->nest('child', 'guide.dashboard.addMedia-partial');
}

1 个答案:

答案 0 :(得分:0)

请与Firebug一起查看您发送的URL和请求类型。

其次请执行php artisan route:list这将显示所有路线及其接受的方法。

已定义和实际请求之间必定存在不匹配。您必须将POST发送到仅接受GET的路由。