laravel - 如何使用'/'传递文件路径来路由laravel?
问题描述
我们如何将文件路径传递给这样的路由,
<a href={{route('route.name',['path'=>'uploads/xyx/'.$id.'/'.$attachment_name])}}>download</a>
但是,我希望这能击中
Route::get('download/{path},'Controller')->name('route.name')
当我点击这条路线时,我的 url 以某种方式被转换成这样 -> download/uploads/44/filename这导致未找到异常!我想将路径作为参数传递,斜杠应该被忽略!这样我就可以在控制器中获得完整路径!
解决方案
根据文档,您可以这样做:
“Laravel 路由组件允许除 之外的所有字符
/
。您必须使用 where 条件正则表达式明确允许/
成为占位符的一部分”
Route::get('download/{path}', ...)->where('path', '.*');
推荐阅读
- distributed - AgensGraph 是否支持分片?
- cloud-foundry - Cloud Foundry 环境变量在 nginx.conf 中不起作用
- c - 为什么要使用 .data 而不是在 .bss 中保留空间并在运行时对程序集/C 中的变量进行初始化?
- php - 在 Laravel 5.2 中测试事件和邮件
- visual-studio-code - vs code TextEditorEdit does not insert a second time
- azure - 使用 MSDeploy ARM 模板将 WAR 部署到 ROOT 文件夹
- angular - 如何使用Angular Animations逐个元素地飞入和飞出?
- java - 如何将blob图像添加到pdf文件?
- git - 如何找到自上次推送以来在分支上推送的最后一次提交?
- reactjs - 如何在 tabNavigator 中全屏查看 stackNavigator?