这是我的刀片文件
{!! Html::link(storage_path().'/documents/'.$file->name, $file->name) !!}
这是控制器
public function download($file_name){
$file_path = storage_path('documents').'/'.$file_name;
return response()->download($file_path);
}
路线
Route::get('documents/{file}','FilesController@download');
答案 0 :(得分:1)
您希望将确切路线添加到HTML链接而不是文件路径:
{!! Html::link('/documents/'.$file->name, $file->name) !!}
答案 1 :(得分:0)
使用HTML::link()
的正确方法是这样的:
{{ HTML::link(storage_path().'/documents/'.$file->name, 'Download Link')}}
这会产生这样的HTML:
<a href="the_generated_link_here">Download Link</a>
详细了解HTML::link()
你也可以使用route()
这样的辅助方法:
只需在路由方法的前面添加name()
方法,因为它为路由提供了一个通用名称。
Route::get('documents/{file}','FilesController@download')->name('downloads.link');
HTML应如下所示:
<a href="{{ route('downloads.link') }}">Download Link</a>