Laravel barryvdh / laravel-dompdf

时间:2016-12-05 13:28:21

标签: laravel-5.2 dompdf

我正在使用Laravel 5.2和包#34; barryvdh / laravel-dompdf"。我正在流式传输/查看视图文件:

$manu = Mmanufacturer::select('manName')->find($manuid);
        $prds = compact('prds','images','temp_header','temp_footer');
        return PDF::loadView('cp.reports.letters-pdf', $prds)->stream();

这会打开相应的视图,并且工作正常...查看图片: http://prntscr.com/dflj4d

在网址的末尾,如您所见' 43'这是默认的ID ..我想在最后显示的是制造商/产品或其他名称而不是它的ID ..我们能实现这个目标吗?

1 个答案:

答案 0 :(得分:2)

您可以为视图pdf设置自定义路由,通过post方法发送参数。像:

Route::post('/manufacturer/product', 'ReportController@viewPdf');

如果您使用按钮,请使用以下方式:

<a href="#!" onclick="event.preventDefault();document.getElementById('viewPdf').submit();">View Pdf</a>

查看PDF表格

<form id="viewPdf" action="{{ url('/manufacturer/product') }}" method="POST" style="display: none;">
       <input type="hidden" name="product_id" value="43">
    {{ csrf_field() }}  
</form>

在控制器中:

 $manuid= $request->product_id;
 $manu = Mmanufacturer::select('manName')->find($manuid);
 $prds = compact('prds','images','temp_header','temp_footer');
 return PDF::loadView('cp.reports.letters-pdf', $prds)->stream();

希望这个技巧会有所帮助。谢谢:)