Laravel Mccarlosen/Laravel-mpdf 包无法将数据传递到刀片模板

问题描述 投票:0回答:1

我无法使用 McCarlosen/Laravel-mpdf 包获取对象数据传递给 Blade 模板。我们的愿望是传递单行数据库记录,但对页面的调用遇到错误 - “未定义变量 $agency”

目标刀片数据语法正确如下 -

{{ $agency->id }}

每个存储库的说明如下 -

    use PDF;

class ReportController extends Controller 
{
    public function viewPdf()
    {
        $data = [
            'foo' => 'bar'
        ];

        $pdf = PDF::loadView('pdf.document', $data);

        return $pdf->stream('document.pdf');
    }

}

在我的控制器中,我毫无失败地调用对象,毫无失败地抓取数据,并且在没有数据的情况下正确地传输 pdf(全部经过测试)。但是,当 $agency 根据上面的示例(按照常见的 Laravel 语法)链接时,它会失败。我相信这可能是 Laravel 对象中数据嵌套结构的次要因素。但不确定。我的控制器功能如下。

public function print(string $id) {

        // Read a single row of data in the Model
        $agency = Agency::find($id);

        // Redirect to the view with the data
        $pdf = PDF::loadView('modules.agencyMain.print',$agency);

        return $pdf->stream('agency.pdf');

    }

寻找指导/答案。

mpdf laravel-10
1个回答
0
投票

机构必须是传递数据中的关键:

$pdf = PDF::loadView('modules.agencyMain.print', ['agency' => $agency]);

就像在普通 Blade 模板中所做的那样:https://laravel.com/docs/10.x/blade#displaying-data

© www.soinside.com 2019 - 2024. All rights reserved.