RouteCollection.php 第 161 行中的 NotFoundHttpException:laravel 5.3
NotFoundHttpException in RouteCollection.php line 161: laravel 5.3
在 laravel 中,我正在尝试 link 到特定页面,但它显示
NotFoundHttpException in RouteCollection.php line 161:
这是我的代码,请帮我找出错误
在我看来:
{{ link_to_route('deleteFile', 'Delete', [$file->resid]) }}
在路线中:
Route::get('/deleteFile/{$id}',
['as'=>'deleteFile','uses'=>'FilesController@deleteFile']);
在控制器中:
class FilesController extends Controller{
public function deleteFile($id)
{
$file = Resource::find($id);
Storage::delete(config('app.fileDestinationPath').'/'.$file->filename);
$file->delete();
return redirect()->to('/upload');
}}
这是我的模型代码:
namespace App;
use Illuminate\Database\Eloquent\Model;
class Resource extends Model
{
protected $table='resource';
public $fillable=['resname'];
}
您的控制器文件中似乎有一个 ` 字符
class FilesController extends Controller{
public function deleteFile($id)//it was right here
{
$file = Resource::find($id);
Storage::delete(config('app.fileDestinationPath').'/'.$file->filename);
$file->delete();
return redirect()->to('/upload');
}
}
试试这个
你的参数有误。它应该 {id}
而不是 {$id}
改变
Route::get('/deleteFile/{$id}',
['as'=>'deleteFile','uses'=>'FilesController@deleteFile']);
到
Route::get('/deleteFile/{id}',
['as'=>'deleteFile','uses'=>'FilesController@deleteFile']);
Link: https://laravel.com/docs/5.3/routing#required-parameters
和Laravel 5.3现在支持使用name
Route::get('/deleteFile/{id}','FilesController@deleteFile')->name('deleteFile');
在 laravel 中,我正在尝试 link 到特定页面,但它显示
NotFoundHttpException in RouteCollection.php line 161:
这是我的代码,请帮我找出错误
在我看来:
{{ link_to_route('deleteFile', 'Delete', [$file->resid]) }}
在路线中:
Route::get('/deleteFile/{$id}',
['as'=>'deleteFile','uses'=>'FilesController@deleteFile']);
在控制器中:
class FilesController extends Controller{
public function deleteFile($id)
{
$file = Resource::find($id);
Storage::delete(config('app.fileDestinationPath').'/'.$file->filename);
$file->delete();
return redirect()->to('/upload');
}}
这是我的模型代码:
namespace App;
use Illuminate\Database\Eloquent\Model;
class Resource extends Model
{
protected $table='resource';
public $fillable=['resname'];
}
您的控制器文件中似乎有一个 ` 字符
class FilesController extends Controller{
public function deleteFile($id)//it was right here
{
$file = Resource::find($id);
Storage::delete(config('app.fileDestinationPath').'/'.$file->filename);
$file->delete();
return redirect()->to('/upload');
}
}
试试这个
你的参数有误。它应该 {id}
而不是 {$id}
改变
Route::get('/deleteFile/{$id}',
['as'=>'deleteFile','uses'=>'FilesController@deleteFile']);
到
Route::get('/deleteFile/{id}',
['as'=>'deleteFile','uses'=>'FilesController@deleteFile']);
Link: https://laravel.com/docs/5.3/routing#required-parameters
和Laravel 5.3现在支持使用name
Route::get('/deleteFile/{id}','FilesController@deleteFile')->name('deleteFile');