首页 > 解决方案 > 如何在 Laravel 5.8 的 Blade 视图中动态显示多个 PDF 文档

问题描述

我对 Laravel 有点陌生,我正在使用 Laravel 5.8 开发一个应用程序。我有许多 PDF 文档,我希望经过身份验证的用户能够查看和下载。我创建了一个控制器来处理文档的查看和下载。由于这些是私人文档,我将它们存储在 (storage/app) 目录中。

我还创建了查​​看和下载每个 PDF 文档的路线。

挑战:如何在 Laravel Blade 视图中动态列出每个 PDF 文档(我有一个带有按钮的视图,用户可以点击并查看/下载文档)

//Controller
//This code handles downloading of PDF files
    public function download($filename)
    {
        $file=  storage_path('app').'/'.$filename;
        return response()->download($file);
         }

         public function display($filename)
         {
            // This where I should place the logic for displaying each PDF file in a view
            $file=  storage_path('app').'/'.$filename;
            return response()->file($file);
         }

//Routes in web.php
Route::group(['middleware' => 'auth'], function () {
    Route::get('document/{filename}', 'PDFController@download')->name('document');
    Route::get('showdocument/{filename}', 'PDFController@display')->name('showdocument');
});

我可以通过以下 URL 下载文件: http://localhost/myapp/public/document/test.pdf 我可以通过访问以下 URL 在浏览器上查看 PDF: http://localhost/myapp/public/showdocument /test.pdf

标签: htmllaravel

解决方案


推荐阅读