2 回答

TA貢獻(xiàn)1998條經(jīng)驗(yàn) 獲得超6個(gè)贊
我在您的任何刪除或更新路由中都沒有看到 POST 方法。
Route::get('/update','BksController@update');
Route::put('update','StudentController@update');
Route::get('/delete','BksController@delete');
Route::delete('/delete','StudentController@destroy');
當(dāng)您單擊表單中的按鈕時(shí),它會(huì)執(zhí)行 HTTP 發(fā)布。因此,將您的路線更改為相應(yīng)Route:post(...)地匹配。

TA貢獻(xiàn)1795條經(jīng)驗(yàn) 獲得超7個(gè)贊
使用Route::resource(...)將創(chuàng)建HTTP請(qǐng)求方法途徑DELETE的destroy行動(dòng),并PUT為update行動(dòng)。這意味著您在提交表單時(shí)必須使用這些方法。
不幸的是,HTML 表單不支持PUT或DELETE。這就是為什么 Laravel 使用一個(gè)名為的特殊隱藏輸入_method,它應(yīng)該包含正確的方法。表單本身應(yīng)該通過POST. 這就是您的更新表單的樣子(省略字段和其他標(biāo)記):
<form method="post" action="{{ url('update') }}">
@method('put')
{{ csrf_field() }}
<!-- Your fields here -->
</form>
該指令@method('put')將生成以下 html <input type="hidden" name="_method" value="put">。
您可以在官方文檔中閱讀有關(guān)此主題的更多信息。
- 2 回答
- 0 關(guān)注
- 180 瀏覽
添加回答
舉報(bào)