调用未定义的方法Maatwebsite \ Excel \ Excel :: create() - laravel 5.6

时间:2018-05-18 10:32:48

标签: php laravel maatwebsite-excel

我在我的应用程序中使用Maatwebsite / Excel,当我收到错误时

  
    

调用未定义的方法Maatwebsite \ Excel \ Excel :: create()

  

来自我的一个控制器。我正在使用laravel 5.6,我严格遵循文档和其他很少相关的在线讨论来解决这个问题,但我仍然得到错误。

如何解决此错误

app.php

'provider' => 'Maatwebsite\Excel\ExcelServiceProvider',

'alias' => 'Excel'=>  'Maatwebsite\Excel\Facades\Excel',

控制器

$cl = ClassModel::Select('name')->where('code',$input->class)->first();
        $input->class=$cl->name;
        $fileName=$input->class.'-'.$input->section.'-'.$input->session.'-'.$input->exam;
        // return $students;
        Excel::create($fileName, function($excel) use($input,$subjects,$students) {
            $excel->sheet('New sheet', function($sheet) use ($input,$subjects,$students) {
                $sheet->loadView('app.excel',compact('subjects','input','students'));
            });
        })->download('xlsx');

4 个答案:

答案 0 :(得分:1)

使用3. *包时使用2. *语法。请参阅此处的正确文档:https://laravel-excel.maatwebsite.nl/docs/3.0/export/basics

答案 1 :(得分:0)

新版本的软件包有很多变化。

在require数组中的composer.json文件中,用以下内容替换您的包:

"maatwebsite/excel": "~2.1.0",

然后运行composer update 这应该可以正常工作。

答案 2 :(得分:0)

请切换到版本2 *

该软件包的3.0版尚未处理导入。此功能的发布日期未知。有关详情,请参阅此帖子:maatwebsite

答案 3 :(得分:0)

尝试使用以下方法减少版本:

composer require "maatwebsite/excel=2.1.0"