[英]Laravel Route : route::resource
我在laravel中是一個新手,我正在關注一些教程
此代碼工作正常
Route::group(['middleware' => 'web'], function() {
Route::resource('tes', 'TesController');
});
<form action="{{ route('tes.destroy',3) }}" method="post">
直到我像這樣修改它
Route::resource('tes/keren', 'TesController');
<form action="{{ route('tes/keren.destroy',3) }}" method="post">
它說tes / keren.destroy未定義...。只是一個簡單的問題,我應該對此進行修改,我可以使用/
謝謝
route()
幫助程序使用路由名稱來構建URL,因此您應該改為:
<form action="{{ route('keren.destroy', 3) }}" method="post">
您可以使用以下命令查看所有可用的路由和路由名稱:
php artisan route:list
route
助手功能將路由名稱作為參數。 當你改變了路線網址,路線名稱變更為keren.destroy
從tes.destroy
。 因此,您需要將表單操作更改為
<form action="{{ route('keren.destroy', 3) }}" method="post">
如果您想檢查您的路線名稱,只需從終端/控制台運行php artisan route:list
。 在這種情況下,它應該顯示給您類似的信息。
| GET|HEAD | tes/keren | keren.index | App\Http\Controllers\TesController@index | web |
| POST | tes/keren | keren.store | App\Http\Controllers\TesController@store | web |
| GET|HEAD | tes/keren/create | keren.create | App\Http\Controllers\TesController@create | web |
| GET|HEAD | tes/keren/{keren} | keren.show | App\Http\Controllers\TesController@show | web |
| PUT|PATCH | tes/keren/{keren} | keren.update | App\Http\Controllers\TesController@update | web |
| DELETE | tes/keren/{keren} | keren.destroy | App\Http\Controllers\TesController@destroy | web |
| GET|HEAD | tes/keren/{keren}/edit | keren.edit | App\Http\Controllers\TesController@edit | web |
Route::resource('url/resource-route','ResouceControllerName')
將最后一個段作為資源名稱,然后自動為其構建路由。
當您使用Route::resource('tes', 'TesController');
它為tes資源建立路由(例如tes.store ,t es.create , tes.destroy等)
但是,當您將路線更改為該Route::resource('tes/keren', 'TesController');
它將所有路由綁定到keren資源。
因此,請在刀片文件中使用它。
<form action="{{ route('keren.destroy', 3) }}" method="post">
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.