2

我有这样的形式

<form action="{{ Request::root() }}/articles/update/" method="post">
    <input type="hidden" name="id" value="{{ $article->id }}" />
    <input type="submit" name="submit" value="Submit" />
</form>

像这样的路线

Route::post('articles/update', array('as' => 'articleUpdate', 'uses' => 'ArticlesController@update'));

但是当我提交表单时,我得到MethodNotAllowedHttpException. 在错误报告中,我可以看到请求方法是 GET。我也尝试过使用大写方法method="POST",但没有奏效。

有任何想法吗?

4

2 回答 2

2

FireBug/Web 控制台检查器向您展示了什么?表单是通过 GET 还是 POST 发送的,是否有任何重定向?

对我来说似乎是一个重定向问题,在到达服务器 Laravel 重定向到 URL 后,表单发送了 post 请求。

于 2013-06-21T17:20:42.680 回答
0

你必须在这里使用 put 方法。像这样改变形式

 {{Form::open(array('url'=>'/articles/update','method' => 'PUT'))}}

像这样的路线

 Route::put('/articles/update','ArticlesController@update');
于 2015-06-25T10:34:23.257 回答