Класс «App\Http\Controllers\Excel» не найден в Laravel

В моем контроллере у меня есть код, как показано ниже:

Excel::create('Laravel Excel', function($excel) {

        $excel->sheet('Excel sheet', function($sheet) {

            $sheet->setOrientation('landscape');

        });

    })->export('xls');

В config/app.php в массиве псевдонимов я определил это:

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

Я не знаю, почему я не могу заставить эту библиотеку работать... Есть идеи?


person Lulzim    schedule 10.05.2015    source источник
comment
Вы запускали composer dump из terminal/command prompt для обновления autoloader?   -  person The Alpha    schedule 10.05.2015


Ответы (4)


Вместо Excel::create вы должны использовать \Excel::create или добавить в начале вашего файла после текущего пространства имен use Excel;, и тогда вы сможете использовать Excel::create

И вторая ошибка в том, что вы использовали:

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

и вы должны использовать:

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

вместо этого в соответствии с документами.

person Marcin Nabiałek    schedule 10.05.2015
comment
Очень странно, что он все еще не работает: s Вызов неопределенного метода Maatwebsite\Excel\ExcelServiceProvider::create() - person Lulzim; 10.05.2015

Иногда очистка кеша конфигурации помогает

php artisan config:cache

Это должно сработать после того, как вы правильно выполнили все инструкции, но по-прежнему получаете ошибку "Класс 'App\Http\Controllers\Excel' не найден в Laravel"

person Tharindu Thisarasinghe    schedule 12.07.2017

После всего этого вам нужно проверить, есть ли у вас это вверху:

use Maatwebsite\Excel\Facades\Excel;
person Mohammad Sheykholeslam    schedule 17.11.2017

В laravel 5.4 сначала установите композитор, используя следующую команду

composer require maatwebsite/excel:~2.1

затем добавьте следующее в поставщики файлов config/app.php.

Maatwebsite\Excel\ExcelServiceProvider::class,

затем добавьте следующее в псевдонимы файлов config/app.php

'Excel' => Maatwebsite\Excel\Facades\Excel::class,

затем добавьте это в свой файл controller

use Excel;
person manikandan    schedule 31.05.2020