2015-11-01 96 views
1

基本上我正在使用如下所示的模式對話框,我試圖讓方法PUT工作。不幸的是,我用_method =「PUT」嘗試過任何一種方式,但它仍然不起作用,任何人都可以爲此提供解決方案?MethodNotAllowedHttpException Laravel方法PUT不工作

<div class="modal-body"> 
        <form class="form-horizontal" role="form" method="POST" _method="PUT" action="/manage_accounts/{{ $user->id }}" novalidate> 
        <input type="hidden" name="_token" value="{{ csrf_token() }}"> 
        <div class="form-group"> 

回答

0

的問題是,HTML不支持PUT方法本身,所以你不能做這樣的事情:

<form method="PUT"... 

有一個辦法解決這個。 Laravel通過添加一個隱藏的輸入字段來接受PUT,PATCH和DELETE方法。換句話說,這樣的事情:你是POST

<form class="form-horizontal" role="form" method="POST" action="/manage_accounts/{{ $user->id }}" novalidate> 
<input type="hidden" name="_method" value="PUT"> 
<input type="hidden" name="_token" value="{{ csrf_token() }}"> 

通知荷蘭國際集團到服務器,但你可以添加一個名爲_method爲PUT,PATCH一個隱藏的輸入字段和DELETE方法。

0

您可能正在設置爲GET路線。

確保'/ manage_accounts/{id}'路由在您的路由文件中設置爲PUT。

Route::put('/manage_accounts/{id}', function() 
{ 
    // 
});