2017-06-06 198 views
1

我laravel很新, 我下面的一些教程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 undefined .... 只是簡單的問題,我應該修改,所以我可以用/

謝謝

回答

0

route()助手使用路由名,建立網址,所以你應該這樣做,而不是:

<form action="{{ route('keren.destroy', 3) }}" method="post"> 

你可以看到所有可用路由和路由名稱使用下面的命令:

php artisan route:list 
0

幫助函數route將路由名稱作爲參數。當您更改路線網址時,路線名稱從tes.destroy更改爲keren.destroy。所以,你需要你的表單操作改爲

<form action="{{ route('keren.destroy', 3) }}" method="post"> 

如果你想查詢你的路線名稱,單從終端/主機運行php artisan route:list。在這種情況下,它應該告訴你這樣的事情。

| GET|HEAD | tes/keren    | keren.index | App\Http\Controllers\[email protected] | web   | 
| POST  | tes/keren    | keren.store | App\Http\Controllers\[email protected] | web   | 
| GET|HEAD | tes/keren/create  | keren.create | App\Http\Controllers\[email protected] | web   | 
| GET|HEAD | tes/keren/{keren}  | keren.show | App\Http\Controllers\[email protected] | web   | 
| PUT|PATCH | tes/keren/{keren}  | keren.update | App\Http\Controllers\[email protected] | web   | 
| DELETE | tes/keren/{keren}  | keren.destroy | App\Http\Controllers\[email protected] | web   | 
| GET|HEAD | tes/keren/{keren}/edit | keren.edit | App\Http\Controllers\[email protected] | web   | 
0

Route::resource('url/resource-route','ResouceControllerName')採取最後一段作爲資源名稱&然後自動生成的路線吧。

當您使用Route::resource('tes', 'TesController');它打造的路線TES資源(如tes.store,T es.createtes.destroy等)

但是,當你改變你的路線到此Route::resource('tes/keren', 'TesController');

它將所有路線綁定到keren資源。

所以在你的刀片文件中使用它。

<form action="{{ route('keren.destroy', 3) }}" method="post">