محمود خسروی
5 سال پیش توسط محمود خسروی مطرح شد
1 پاسخ

چگونه با لاراول pdf را ایجاد کنیم

من میخواهم برای هر گزارشی که کاربر روی <kbd>دانلود PDF</kbd> را کلیک کنه براش pdf را بتونه دانلود کنه.

به کدهای من توجه کنید.

report.blade.php

<a class="btn btn-primary btn-sm" href="{{ route('report-export-pdf', $order) }}">ئانلود PDF</a>

web.php

Route::get('report/export-pdf/{order}', 'ReportController@export_pdf')->name('report-export-pdf');

ReportController.php

public function export_pdf(Order $order)
{
    $report =  Report::find($order);
    $pdf = app('dompdf.wrapper');
    $pdf->loadView('Home.report');
    $fileName = $report->issue_number;
    return $pdf->stream($fileName.'.pdf');
}

من خیلی خیلی سعی کردم که دانلود بشه اما هر بار که کلیک میکنم یه خطای جدید میاد اما اخرین خطایی که من میبینم اینه

Undefined variable: order (View: C:\xampp\htdocs\urmiahardware\magzrayaneh\resources\views\Home\report.blade.php)

order یافت نشد. کسی میتونه کمک کنه؟


ثبت پرسش جدید
علی بیات
تخصص : توسعه دهنده ارشد وب
@ali.bayat 5 سال پیش مطرح شد
0

روش متداول استفاده از domPDF به شکل زیره:

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

use PDF;

class HomeController extends Controller

{

    /**

     * Display a listing of the resource.

     *

     * @return \Illuminate\Http\Response

     */

    public function generatePDF()

    {

        $data = ['title' => 'Welcome to HDTuto.com'];

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

        return $pdf->download('itsolutionstuff.pdf');

    }

}

و myPDF هم باید یه تملت ویو باشه شبیه زیر:

<!DOCTYPE html>

<html>

<head>

    <title>Hi</title>

</head>

<body>

    <h1>Welcome - {{ $title }}</h1>

    <p>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod

    tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam,

    quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo

    consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse

    cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non

    proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p>

</body>

</html>

اینجا بنظر میرسه اینجا مشکل از متغیر Order هست. بجای استفاده از Route Model Binding از یه کالکشن فیک استفاده کنید ببینید ارور برطرف میشه


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام