下载存储无法正常工作的文件链接 - Laravel

时间:2016-06-29 01:59:46

标签: php laravel

我正在将我的文件存储起来,而且它正在运行。但是,下载链接返回错误。

以下是允许用户上传文件的视图

<div class="form-group{{ $errors->has('notes') ? ' has-error' : '' }}">
       <label class="col-md-4 control-label">Upload your notes</label>
           <div class="col-md-6">
               <input type="file" class="form-control" name="notes">

                   @if ($errors->has('notes'))
                       <span class="help-block">
                               <strong>{{ $errors->first('notes') }}</strong>
                       </span>
                    @endif

           </div>
</div>

这是我在控制器中对请求的处理。

    Storage::put(
    'notes/' . $note->id . '.pdf',
     file_get_contents($request->file('notes')->getRealPath())
    );

如果触发,pdf文件存储在我的storage / app / notes目录中。

我用来下载文件的链接是:/notes / 90.pdf,其中&#39; 90&#39;是注释ID。

我一直在收到错误

RouteCollection.php第161行中的NotFoundHttpException:

1 个答案:

答案 0 :(得分:0)

您需要定义可以为您的文件提供服务的路线。

Route::get('notes/{id}', function ($id) {
    return response()->download(storage_path('notes/' . $id . 'pdf'));
});

您可能希望将下载逻辑移动到控制器。并添加验证以检查文件是否存在,但您已获得基本想法。