路由文件web.php:
Route::get('/download/received/{image_id}/{isoriginal?}', 'DownloadController@download_recv_image');
查看:
<li><a href="{{action('DownloadController@download_recv_image', [$image->id, true])}}">Download {{strtoupper($image->extension)}}</a></li>
<li><a href="{{action('DownloadController@download_recv_image', $image->id)}}">Download PNG</a></li>
控制器中的功能
public function download_recv_image($image_id, $original=false){...}
此功能用于下载接收的图像。当我单击视图中的第一个链接时,将调用路由并执行功能。但是在我不发送第二个参数的第二个链接上,它向我返回错误404,并且看起来无法捕获路由。
(我还有另一个下载用户图像的功能,在另外两个链接中具有相同的逻辑来定义路由,并且一切正常。)
答案 0 :(得分:1)
我找到了问题所在。
那是因为在那条路线的上方,我还有另一条路线:
Route::get('download/{image_id}/{isoriginal?}', 'DownloadController@download_user_image');
我将第二条路线更改为/ received / download,而不是/ download / received
这很麻烦,因为两条路线的起点和参数都错了。