从Laravel中的刀片视图导出Excel

问题描述 投票:2回答:1

我想使用Laravel Excel从刀片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');

刀片文件

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

怎么了 ?

php excel laravel
1个回答
1
投票

由于您正在实现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');

检查这是否适用于您的情况。

© www.soinside.com 2019 - 2024. All rights reserved.