Php Laravel通过路由将值传递给方法
我有: 与: 这让非管理员和管理员都可以删除产品,但我只希望管理员能够硬删除 上面的路由只能由管理员访问Php Laravel通过路由将值传递给方法,php,laravel,laravel-5,Php,Laravel,Laravel 5,我有: 与: 这让非管理员和管理员都可以删除产品,但我只希望管理员能够硬删除 上面的路由只能由管理员访问 要将$hard设置为true,我需要在路由中添加什么内容?您可以执行以下操作: public function delete($id, $hard = false) { $product= Product::find($id); if($hard) { $product->destroy(); } else { $product-
要将$hard设置为true,我需要在路由中添加什么内容?您可以执行以下操作:
public function delete($id, $hard = false) {
$product= Product::find($id);
if($hard) {
$product->destroy();
} else {
$product->delete();
}
}
{hard?}
中的问号告诉laravel这是一个可选的路由参数
当您在某处使用此路由时,您可以将params数组设置为
Route::delete('admin/sanitise/{id}/delete/{hard?}', ['as' => 'admin.sanitise.delete', 'uses' => 'ProductController@delete']);
如果未在路由参数中设置“硬”键,将使用函数定义中的默认值false
。将其添加为可选参数
Route::delete('admin/sanitise/{id}/delete/{hard?}', ['as' => 'admin.sanitise.delete', 'uses' => 'ProductController@delete']);
$url = route('admin.sanitise.delete', ['id' => $someId, 'hard' => true]);