使用laravel 4.2从数据库记录中获取DomPDF

时间:2015-04-21 19:52:01

标签: laravel-4 routes dompdf

我正在使用laravel 4.2 barryvdh / laravel-dompdf。 我想要打印我的PDF按钮。 我的路线:

Route::resource('orders', 'OrderController');

在OrderController中我有方法:

public function printpdf($id)
    {
        $order = Order::find($id);

        $pdf = PDF::loadView('print.en', $order);
        return $pdf->download($order->id .' '. $order->created_at);
    }

我可以从show.blade.php调用该方法。我正在使用此链接:

<a class="btn btn-small btn-danger" href="{{URL::to('orders/' . $order->id . '/printpdf')}}">Print PDF</a>

我必须采取什么样的方法来完成这项工作?我想创建一个从MySQL数据库中获取记录并将其打印为PDF的函数。如何正确使用?

1 个答案:

答案 0 :(得分:2)

正如laravel doc所提供的,

  

如果您需要向资源添加其他路由   超出默认资源路由的控制器,您应该定义那些   致电Route::resource之前的路线:

在你的情况下,你可以这样做,

Route::get('orders/{id}/printpdf', 'OrderController@printpdf');
Route::resource('orders', 'OrderController');

在OrderController中,根据this issue,您可以这样做。

public function printpdf($id)
{
    $order = Order::find($id);
    $pdf = PDF::loadView('print.en', array("order" => $order));
    return $pdf->download($order->id .' '. $order->created_at);
}

希望它对你有用。