【问题标题】:Laraver problem show URL of stored file in blade viewLaraver 问题在刀片视图中显示存储文件的 URL
【发布时间】:2021-02-04 05:19:57
【问题描述】:

我有一个 Laravel API 来在 Laravel 本地存储文件。 File_path/app/Files/{id_message}/。变量id_messagefile_path存储在数据库表files中。

当我上传文件时,我遇到了这种情况:

files

id    id_message    file_path
1     000001        /app/Files/000001/w2YANqYe82itnLSsIa.zip

我不知道如何在刀片视图中显示以供下载:

<td><a href ="{{ asset ('app/Files/'.$id_message.'/'.$file_name) }}">Download</a></td>    

老实说,我浏览了网络上的可用材料,但我不知道该怎么做

我很乐意为您提供任何帮助。

function fileUpload(Request $request)
{
    $request->validate([
        'id_message' => 'required|min:6'
    ]);
    
    $idParameter = $request->id_message=$request->id_message;

    $result=$request->file('file_path')->store('Files/'.$idParameter);
    
    $file = new File;
    $file->id_message=$idParameter;
    $file->file_path=$result;
    $file->save();
}

filesystems.php

'disks' => [
        'private' => [
        'driver' => 'local',
        'root' => storage_path('app/Files'),
    ],

【问题讨论】:

  • 你不能通过url访问/app/Files/这个文件夹把所有文件放在storgaepublic然后你可以通过url访问..或者如果你把你的上传文件放在上面会很棒代码
  • 代码添加到问题

标签: php database laravel laravel-blade


【解决方案1】:

您通过store() 方法存储文件,因此您可以通过Storage::url() 获取文件网址

<td><a href ="{{ Storage::url('app/Files/'.$id_message.'/'.$file_name) }}">Download</a></td>   

喜欢这个

参考链接https://laravel.com/docs/8.x/filesystem#file-urls

注意 : - 如果驱动程序是公开的,它将起作用

【讨论】:

  • 如何定义变量id_message?知道我有错误:Undefined variable: id_message
  • 它应该来自特定数据的数据库
猜你喜欢
  • 1970-01-01
  • 2021-09-21
  • 1970-01-01
  • 2019-06-12
  • 1970-01-01
  • 2020-09-13
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多