web-dev-qa-db-fra.com

Classe 'App \ Http \ Controllers \ Excel' introuvable dans Laravel

Dans mon contrôleur, j'ai le code ci-dessous:

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

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

            $sheet->setOrientation('landscape');

        });

    })->export('xls');

Dans config/app.php dans le tableau d'alias, j'ai défini ceci:

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

Je ne sais pas pourquoi je ne peux pas faire fonctionner cette bibliothèque ... Une idée?

14
Lulzim

Au lieu de Excel::create Tu devrais utiliser \Excel::create ou ajouter au début de votre fichier après l'espace de noms actuel use Excel; et vous pourrez ensuite utiliser Excel::create

Et la deuxième erreur est que vous avez utilisé:

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

et vous devez utiliser:

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

à la place selon docs .

21
Marcin Nabiałek

Parfois, l'effacement du cache de configuration le fait fonctionner

php artisan config:cache

Cela devrait fonctionner après tout ce que vous avez suivi correctement toutes les instructions mais toujours obtenir "Classe 'App\Http\Controllers\Excel' introuvable dans Laravel" erreur

5
TharinduLucky

Après tout cela, vous devez vérifier si vous avez ou non ceci en haut:

use Maatwebsite\Excel\Facades\Excel;
2