Экспорт Excel из вида лезвия в Laravel - PullRequest
0 голосов
/ 20 ноября 2018

Я бы хотел экспортировать файл Excel из вида Laravel с использованием Laravel Excel , но я получил эту ошибку:

Declaration of App\Http\Controllers\ExportController::view($id): Illuminate\Contracts\View\View must be compatible with Maatwebsite\Excel\Concerns\FromView::view(): Illuminate\Contracts\View\View

Контроллер

<?php

namespace App\Http\Controllers;

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


class ExportController implements FromView
{

    public function view($id): View
    {
        return view('users.export', [
            'user' => User::find($id)
        ]);
    }
}

Маршрут

Route::get('exportxls/{id}', 'ExportController@view');

Файл Blade

<table>My data is here...</table>

Что не так?

1 Ответ

0 голосов
/ 20 ноября 2018

Поскольку вы реализуете Maatwebsite \ Excel \ Concerns \ FromView, вы должны переопределить view() без каких-либо параметров.

public function view(): View
{
    return view('users.export');
}

Поскольку вам нужно user_id, вы можете попробовать передать его функции вURL.Что-то вроде: server/exportxls?user_id=2

А затем получите это как:

$userId = request('user_id');

Проверьте, работает ли это для вашего случая.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...