Laravel URL Route获取2参数

时间:2014-11-17 19:05:01

标签: laravel laravel-4 laravel-routing

我需要删除相册中的照片,所以我认为我需要在路由上有2个参数 但我收到一些错误,请给我解决方案或其他方式删除相册中的照片

这是我的Routes.php:

Route::get('/admin/album/{albumid}/{id}/delete-photo', array(
    'as' => 'admin-photo-delete',
    'uses' => 'GalleryController@deletePhoto'
));

并在GalleryController上调用函数deletePhoto,这里是GalleryController:

public function deletePhoto($albumID,$photoID){
$photo = Album::find($albumID)->photo()->where('id','=',$photoID)->get();
if($photo){
    File::delete(public_path().'/assets/images/gallery/'.$photo->images);
    $photo->delete();
    return Redirect::route('admin-gallery')->with('message','Photo was deleted successfully');
}
return Redirect::route('admin-gallery')->with('message','Photo delete failed');}

以及我如何调用路线:

 <a href="{{URL::route('admin-photo-delete',$id,$photo->id)}}">Delete Photo</a>

我已经确定$ id和$ photo-&gt; id不是null但是看看那里显示的url没有第二个参数值,所以我收到了一些错误: enter image description here

1 个答案:

答案 0 :(得分:9)

URL::route中,您应该使用数组作为第二个参数,如下所示:

<a href="{{URL::route('admin-photo-delete', [$id, $photo->id] )}}">Delete Photo</a>