Karthik
Karthik

Reputation: 5757

How to export Data from view with Search values in Laravel and maatwebsite 3.0

In my Laravel Project I using maatwebsite package**(3.0)** to Export Data from view in Excel Format.

i use following code to export Data from view

namespace App\Exports;

use Illuminate\Contracts\View\View;
use Maatwebsite\Excel\Concerns\FromView;

class InvoicesExport implements FromView
{
    public function view(): View
    {
        return view('exports.invoices', [
            'invoices' => Invoice::all()
        ]);
    }
}

How to pass search input values in this function and export data in Excel Format

Upvotes: 0

Views: 3113

Answers (1)

Patrick Brouwers
Patrick Brouwers

Reputation: 71

You can simply pass any value through the constructor.

return Excel::download(new InvoicesExport(request('q'));    

-

class InvoicesExport implements FromView
{
    private $query;

    public function __construct(string $query)
    {
         $this->query = $query;
    }

    public function view(): View
    {
        return view('exports.invoices', [
            'invoices' => Invoice::where('title', 'LIKE', $this->query)->get()
        ]);
    }

}

See the FromQuery documentation for more examples of passing parameters: https://laravel-excel.maatwebsite.nl/docs/3.0/export/from-query

Upvotes: 4

Related Questions